The biggest problem with Android phones, IMO, is that the software releases from the manufacturers are completely half-arsed. Many of the IHVs hack together their own front end (MotoBlur, Sense, TouchWiz etc) then rarely bother to update to newer android versions or improve the software unless there are some show-stopping bugs. I've got an Atrix which was Motorola's top end device a year ago but it now looks as though there will be no official ICS release which is pretty crummy service whichever way you look at things. Apple's continued support and updates for older devices shows how a company should act towards their customers, even if to balance this out, users have to accept the limitations Apple enforces on you to protect their bottom line.
At the other end of the scale is Motorola who make very good hardware (build quality of my Atrix and the Defy I previously used is bulletproof), but offer terrible service. Of all the Android front-ends, Motorola's Blur is probably the worst, hence the crappy battery life on the standard Razr. However, if you are willing to root your phone you can freeze these crappy apps and, by installing custom ROMs from the enthusiast community, you can greatly improve the performance, battery life and functionality of the device. Of course, for my Atrix, I needed to unlock the bootloader using a hack (thereby nullifying my warranty) to be able to install the much improved ROMs.
I do wonder if the Motorola customer service will improve in the future when Google complete their take over? It would seem to be a bit perverse if new versions of Android weren't released for older phones by a company owned by Google themselves. That said, I wouldn't put anything past Motorola!