I'm graduating in may from a BSEE program, and I must say this is largely correct. Calculus and physics courses from freshman and sophmore year were largely sink-or-swim where about half the class would drop before we even reached the halfway point of the term. They had more students sign up then they had capacity to teach, so weeding out students was the explicit purpose of those classes, to the point where we'd lose 50% or more by halfway through the term, and of the half that remained, a fair number still failed.
Unnecessary homework load is the prime culprit. Freshman and Sophmore level classes will routinely assign homework where you'll learn how to solve a particular kind of problem the first time, and then repeat it with minor alterations another dozen times. Compare this to Junior and Senior level classes where we'll get three very difficult problems, and that's it. Additional studying or examples can be done at the student's discretion.
Since every class is loading you down with the same level of unnecessary busywork, you're inevitably so swamped that you stop sleeping, lose out on any kind of social life, and tear your hair out from the stress. Frankly, I sometimes wonder if I'm the stupid one for sticking with it, when I could have just said, "Fuck it," and coasted through a business major without even trying like several of my peers ended up doing.