People don't necessarily gravitate that way. At least not like it's an active decision that's made with both choices in front. You are likely seeing inertia since VS2010 has been around longer. That means most existing projects were created when VS2012 didn't exist.
Why so? Because for complex but already live projects, it's usually not worth rocking the boat. It might be a geek itch to update it to the latest and greatest but without an upside (client/employer/you/projects doesn't care) it's best to let things be. Also, if someone has invested in the premium or ultimate version of Visual Studio 2010, they may not want to update to 2012 unless there is a clear financial incentive (hard for FOSS projects).
We usually keep the latest + one version prior installed on the dev systems. The policy is:
- All new projects get created in the latest Visual Studio.
- Older projects still in maintenance are opened in the prior version of Visual Studio
- Older projects get updated to the latest Visual Studio only if product owner offers buy-in (usually for continued support from engineering) AND if older project is due for an update.
- Even older projects (live but not maintained) are left as is.