Thanks for yet another excellent piece, Jason. It is definitely a frustrating situation.
On the other hand, you didn't say much about the mobile operators, and I think they absolutely must share a good chunk of the blame. I was reading a related
article at JK On the Run earlier today, and in it James Kendrick actually makes the case that, instead of consumers being angry at the MS and the OS, most are typically only dimly aware of the specific OS their device is running, and are much more acutely attuned - as they should be - to the name of their carrier, which in the US is prominently stamped on the hardware and woven throughout the customized OS, as well. And, as JK noted, if a customer has a Sprint or Verizon or T-Mo branded phone, it's only natural that he would expect to be updated by Sprint, Verizon, or T-Mo.
Ultimately, however, I think you're mostly right that MS may not have claimed enough power over the performance of their OS, and that too much power may well be in the hands of the networks...