My wife is a Biochemistry Professor - with a capital B. Undergrad B.S. in both Chemistry AND Biology; Ph.D. from Texas A&M in Biochemistry.
When she took the sciences in school she was taught by Biologists and Chemists, who took and passed the real science classes in college. Today, the VAST majority of students are taught by Education majors with an emphasis in this or the other. They don't take the "Real" science classes - the ones the pre-med and graduate bound students take. They take a few watered down versions; but mostly education classes. I guess they can "teach", but they aren't passionate, or even particularly good at the subject they are teaching; probably don't even recognize the students coming through their classes who might be predisposed to a career in the sciences; much less are they able to inspire and nurture them.
Finally, when the students get through high school, and enter college and go to take that Chem 101 class; they are, for the most part, disiterested, and WORSE convinced that it is simply TOOO hard; they accept their inability to NOT learn the subject matter, and move on. She just graded the 2nd test of the semester for 102 (2nd semester Chem 1) class; the average was a 47! I took the test (I was a liberal arts major; and took the "baby" classes myself 20 years ago) - I made a 66! She teaches a medium sized state school up here in PA - roughly equivalent to UTSA in admittance standard.
Oh, and don't forget computers. LOTS of those science led - geeky minds have gone that direction.