IDG Answers is a community of experts who are passionate about technology. Ask a question or answer one below.
My cynical side says because most phone companies don't care enough to bother with it. If an update doesn't work properly, they they are going to get a flood of calls from irate customers, and people arenlt very patient when their expensive smartphone is out of service. However, that isn't the only thing. There are downsides to sorta open source Android, in that there is so much possible customization in software and hardware, which complicates the update process. There is so much difference in hardware from different manufacturers that a device that works well with Android 2.3 might be a brick with Android 4.0.
With Apple, there isn't much excuse, other than addressing the differences in the different generations of iPhones. The universe is much more closed compared to Android, and I think that is why Apple and carries are better at providing updates for iPhones than what Android users experience.