I have developed my own philosophy for why updates can hang up like mine did. I believe that Google thoroughly tests a new OS out before they release it (remember how long we had to wait for our froyo?) to make sure it plays nice with their old version. But what they don't do, and what they aren't responsible to do even if it were possible (which it isn't) is test their new OS against any issue's it might have with the apps that are available on the market.
That isn't their job, their job is to supply the OS, which the devs then take and create apps that can run on it without any instability issues (... ok so they aren't exactly batting a thousand in that respect, but they have a decent enough record). But they have no way of knowing how exactly their apps will react to the new OS. Many times they have to update their apps directly after an OS upgrade. So people like me who had their phones loaded down with apps (I had right at 100 when I did the OTA update) head into the deal with a lot of if's circling around our phones.
When I did mine I experienced quite severe lag at times, quite a few FC's and even a couple complete freeze up's before I started troubleshooting. It wasn't until I did a factory reset AND formatted my SD card that everyone played nice and froyo started acting normal. So when 3.0 rolls around I for one will be making a fresh Titanium Back-Up, as well as updating my AppBrain account, then I'll do a factory reset just before the update... perform the update... and then do another factory reset afterwards before I add back all my apps again. We'll see if I experience a smoother transition doing the update on a clean 2.2.
And you see I'd dare to estimate that for the vast majority of X'ers out there, a dozen or 2 apps is probably all they have on their phones when the update got pushed out. Peeps on forums like this one tend to do a whole lot more experienting with the different apps than the average everyday customer. And without so many apps (or variables) on their phone, the lower the chance that something could go wrong.
But don't think I'm saying that 100 times out of every 100 attempts you update a clean 2.1 to 2.2 it will go off without a hitch... these are computers we're talking about after all. And computers just don't always do as they're told to do, period.