> if your goal is to produce engineers that push the envelope of next generation technology beyond just computers
Then computer science isn't where you belong. There is a solid argument for teaching everyone the basics of programming, and this is it. I can hammer a nail into a wall, too, but that doesn't make me a carpenter.
If computer science is all you want to study, then an engineering school might not be the best place for you. You're probably better off at a small liberal arts school. At Schools like MIT and Berkeley, computer science is an optional specialization in the EECS program. If you look at the MIT course maps for the three main degree paths (EE, EE+CS, and CS) you'll see that 6.01 and 6.02, the replacements for 6.001 (the SICP course) are foundational for all 3 specializations.
http://www.eecs.mit.edu/ug/ug_6-1.html
If all you learn is how to string together APIs and libraries, then it probably wasn't a "curriculum" at all. But emphasizing certain technology domains other than programming and computer science does have its advantages, especially for program meant for engineers more than computer scientists.
It's hard to argue against the merits of SICP and I'm not going to try, but if your goal is to produce engineers that push the envelope of next generation technology beyond just computers (eg robotics, optics, advanced human-computer interfaces, gene sequencers, advanced materials, etc.) then "stringing libraries and APIs" together might be more exciting than one might assume.