I would also argue that while learning stuff on your own is doable for most people, it is even more important to know what you need to learn and to stick with learning it, even if it doesn't seem immediately useful.
This is one thing I think CS programs provide that is really, really hard for people to do on their own. As programs like Udacity and Coursera get bigger and more mature, I think this is one area where they can really add a lot of value: giving people a roadmap and an external way to gauge their progress.
I disagree with what you say, but a lot of people tend to agree with you. I'm assuming that most people haven't actually tried teaching themselves something to know what's more effective.