You've covered mymajor complaints against Micros~1, and more.
One question tho. You're approach doesn't see to protect us agains the "forced march" of upgrades envisioned by .NET. The 5/7 year protection goes a long way toward that, to be sure. But I question whether we're protected against Micros~1 playing licensing games. As I read your enjoinder, Micros~1 might say, "OK, we're 'selling' .NET 2004 for 5 years. So you can license it any time up to 2009. But after 6 months, you have to 'upgrade you license', and oh...hey that'll cost you...."
Thy'd pull a slimy stunt like that, too. (Indeed, some think they're already pulling off a slimy stunt like that!)
Am I missing something?