Though I agree with what you said, I had the Lumia 900 and when my 30 days was approaching I decided to sit down (figuratively) and take a look at what it really had to offer.
The Lumia 900 was a nice piece of Hardware joined with a nice piece of Software, but knowing that the Lumia 900 was just released in April and its already considered obsolete (not even Android phones are phased out this quickly) and would not receive a Software update after 7.8, I started to think if I can really be happy with the current device for the next 24 months as is. The UI is awesome and the way it flows is really nice, I loved it, but the app selection is just not there and the Camera had a lot to be desired.
Well the Lumia 920 was just announced so I decided to take a look at what that phone had to offer, as well as Windows Phone 8. No release date, no pricing or carriers and Microsoft hasn't even put out an SDk yet to allow developers to start building apps for the new OS.
I really wanted to give Windows Phone a chance, I really like it but with the Lumia 900 being obsolete and the Lumia 920 having no official release date (rumored for a Nov release), the iPhone 5 was released at the right moment.
1 (of many) things that these companies need to change is to stop announcing new devices without have a release date set, this is something Apple does well, they announce a new product and its on selves (though not for long at they rate they sell) in just a week or two.