When I was in high school, teachers were in exceedingly high demand. Because of this, teaching was a career highlighted often by our teachers.
The result is that most of my friends ended up choose teaching careers; along with a significant number of others in my age group. I have watched my friends really struggle to find work in the field and a couple have even chosen to leave the field altogether because there are far more people than jobs now.
Anyway, the point is that being forcefully reactive to the problem of career demands is never a good idea. You will just end up with a bunch of highly trained people who are unable to use those skills. I do not believe that software development is immune to this fact: Both teaching and programming are skills that are useful everywhere, but it still didn't help my friends.
The market will naturally sort itself out. As pay for programers rises, more people will become interested in the field until the pay declines again. The influx becomes manageable this way. Any additional incentives will cause the problems above. It is best to not mess with the market.
I think this is a great idea, but hope that in 10 years the kids who only have experience in software engineering do not become a commodity.
It's a supply and demand curve, there really only needs to be a few thousand too many developers looking for work and the entire thing will crash from the programmer perspective. Salaries/benefits will fall because people will be more eager to settle...and then there'll be in a race to the bottom taking less and less compensation in order to get a job