I'm surprised that nobody mentioned that Android fast release pace, there is new major updates every roughly 2 months. This fast pace makes it hard for manufacturers to release a phone with the most up-to-date version since they must play catch up all the time, well unless for the Nexus line which got early access to the OS from Google.
In any case, we had to admit that the majority of users doesn't really care about getting the very latest version; but they will complain loudly if the phone crashes or loses data. The mentality of power user (including me) is a bit reversed, we want the latest and greatest, even when it comes with crashes.
Even for custom ROMs, even if they can release an update that boots in a few days after a new Android is released by Google, it always takes several weeks or months until they can release a version that is relatively stable and have all the features working correctly.
If an Android update takes several months to complete, you can't really blame the manufacturer. That's just how long it takes to test something as big as an OS. You also can't blame manufacturer wanting to differentiate and try to innovate by creating their own skins; the last thing you want is for all Android phones to look exactly the same, as that will be the end of innovations, and the end of innovation marks the end of a platform. Especially recently, it has been shown that each manufacturer skins has their own fans, and often features in the stock skin turned out to originate from manufacturer skins.
However, if it takes more than a week from manufacturer releasing an update to the carrier releasing the update, then blame the carrier. Your carrier really in no business in adding extra applications to your phone. The carrier's main responsibility is for testing that the device will work with their network, which shouldn't take long unless there's a major fault in the telephony driver. They shouldn't be adding extra software on top of the phone as they're not supposed to be designing a device (that's the manufacturer's job). Even if they added some useful extra software (e.g. data usage counter), they shouldn't be crucial to the basic functionality of the phone and so shouldn't block the release of the update.