I'm on board with Marcus... cost is a major, major factor. It's hard enough to sell a few hundred bucks for a monitoring package - but then multiply that by the number of servers in your environment, and if you're in a medium-to-large shop, it just becomes prohibitive. In most cases, we're really not all that interested in the deeper stats... we just need something that gives us a heads-up on four or five key items.
I'd love to find a relatively inexpensive SQL monitor (or a general-purpose monitor that we could write our own stats-post into) that we can buy once, and tie in to any number of servers. Or one that has a minimal cost variance depending on tiers of servers... 1-10, 11-50, 50-200, and 200+ - something like that. I could probably 'sell' $2000 for the 11-50 tier... but could never sell $30,000 just to get basic monitoring for 20 SQL Server Express boxes that we paid... $0 for. We could just as easily hire someone, and have a multi-purpose entry-level DBA trainee.
I find myself in a loop, though - I need better monitoring than I have today, I could write something basic if I wanted to take time away from other projects, but the price tag on the out-of-the-box ones that are worth the expense just keeps us away. So I just keep dragging along with mediocre monitoring and reactive corrections, and start the loop all over...