I think the main problem is not just that top talent is no longer going into science and engineering, but that poorer talent is entering. Every university you can think of now has a program where you can graduate with a bachelors in science. It used to be that top schools were the only ones producing anyone who can reasonably call themselves scientists, but now everyone is doing it.
It's even worse for engineering. Here in Canada we have very strict regulations on the certification of our engineers to make sure that they all have the same basic knowledge, but I know people who went into engineering programs that had required entrance averages a full 20% lower than mine! I wouldn't trust them to engineer a toaster, but they're in fields with a lot more responsibility, like aerospace for example. And that's /with/ our strict regulations, I know places in the U.S. have lower standards and the people who graduate from those programs will one day call themselves engineers.