Imho, anytime a phone 1 year old or less has to wait 6+ months for a new Android OS upgrade, the OEM is failing to live up to Google and more importantly, the customers, standards.
The number of casual users who won't even recognize the fact that their phone upgraded from 2.3 to 4.0 is the number two reason these companies don't push hard to keep their phones up to date. With the number one reason being money. It's more profitable to lock out 1 year old phones from staying up to date, making that new device running the new version of Android more enticing and a possible sale from people who fall for gimmicky sales tactics.
Realistically Google wants every phone to be on ICS right now. At least, any phone that has the hardware to run it. Which in all honesty, is any mid range phone from 2010 and up. Certainly a flagship 2011 phone should be quite capable of running ICS, don't you think? So whats the only other possible explanation? See paragraph 2 and it'll be easily understood.