This is spot on, though I did want to add a bit...
My gf, who predictably enough works in education, is absolutely desperate to get more men into the field. As teachers, as volunteers, as just about anything we are willing to do, just to get more interaction between children and adult men. Society is slowly becoming aware of gender gaps in those fields and starting to provide incentives.
As for social aspects of software engineering, I posted about it before I read what you wrote. I think computer-related jobs get that reputation because they are some of the few fields where anti-social people can excel. I think that's great, but that reputation has clouded the view of software engineering, which in general is a very social task requiring a great deal of interaction among the team. To repeat myself, your anti-social programmers are going to be brilliant because the *have* to be. Where I am, a programmer who's merely pretty good but can't work with the team is going to fail.