Let’s be honest about technology for a second: Things go wrong. No matter what solution you use things go wrong and for the most part non-technical management doesn’t understand that. When something goes wrong they want someone to blame.
If you decide to go with something like Ruby on Rails you have to contend with the fact that management doesn’t understand open source (or trust it) and have never heard of 37Signals. So the blame falls to you for having gone with a small “experimental” company rather than a “trusted” one like Microsoft (and yes those words in quotes are actual quotes from my attempt at using such technology)
Where as when something goes wrong with Microsoft technology it’s written of as inevitable (that’s where the saying “no one ever got fired for using Microsoft” came from) It’s a sad reality but sometimes you can’t pick the best technical solutions. Sometimes the extra time it takes to use proprietary Microsoft technology is worth the political capital you save by going with Microsoft. That fact doesn’t make me happy but it’s true.