On another thread yesterday someone (I wish I could cite who) stated that the reason for the zero or sub-minimum wage pay was to insure that the internships go to trust fund kids of the proper family background who don't need to be paid, rather than people struggling to get a job. People who need a job don't have or need the "proper" connections.
Which may be why in engineering internships I got paid twice or more the minimum wage. They didn't care about connections, they cared about having someone with technical skills doing some of the scut work to let the professionals focus on the high end work.
The same is true in IT, at least here in Toronto. Employers learn the hard way that the only interns who would work for free have neither the talent nor the aptitude for the job.