1) Developers must invest more time and money in order to support a wider range of firmware revisions, as the user base is more fractured. This leads to less app selection for users, and more buggy behavior on apps that are available. If you're an iOS developer, you can focus on just the last major firmware revision and reach 95%+ of the market, or support the last two major firmware revisions and reach 99%+ of the market, whereas on Android, you're forced to support a few more than that, and the populations stuck at each older revision are much more significant. Read the article for Android stats by revision. Here's an article with a bit more detail on the iOS side:
http://www.marco.org/2011/08/13/instapaper-ios-device-and-ve...
2) Performance and security updates are unavailable, making the user experience sub-optimal, and potentially putting users' personal information at risk.
Users are missing security fixes, developers can't use new features in new versions.
These people, even if they know that upgrade is available won't bother. The existing device with it's current firmware works for them, so why change it.