Not just activeX -- back back BACK in the day M$ did something really weird and REALLY ahead of it's time.
They made Trident available to programmers for use as a way to build your UI... basically working like GTK or QT... or more recently XULRunner. It in fact in many ways is a precursor to XULRunner in concept and functionality.
In VB, VC++, even Delphi you can make a 'browser object' and have your standalone application use trident as it's renderer with only five or six lines of code!
The problem with this is that a LOT of those old programs break or have... unusualy/unexpected behaviors on IE7/newer. Back when IE7 was released it was funny when even some antivirus and security softwares broke! McAfee, Symantec and PC-Trend all used Trident to render their dialogs in older versions... which is REALLY funny if you think about having your antivirus relying on a working copy of IE6/earlier.
... and that's the big boys; think about all the little in-house crapplets written a decade ago the current staff might not even understand the code for but an entire business could hinge on.
That's before we even talk windows mobile where just two years ago the MOST RECENT VERSION OF IE was 5.5 and today the MOST RECENT VERSION OF IE is 6.0 (though I'm not sure about Win7 mobile). What, did you miss the 6 on 6 party just a couple years back? That's ok, so did everyone else.
Though your pointing the finger at developers for doign their JOB was more than a little offensive. Oh yes, it's the developers fault for actually supporting the users. Failing to still support IE6 or even 5.5 (I'm not talking pixel perfect, I'm talking a usable if degraded website) comes down to either being lazy, ignorant, or both. There isn't one blasted USEFUL thing you can do on a page in the latest browsers you cannot accomplish in IE6 and probably 5 -- if you come up with something, it's probably NOT essential to the functionality of 99% of websites or couldn't be done a simpler, better or more accessible manner.
You always hear the "its' too hard" or "it takes too long" argument. If it takes you more than fifteen to twenty minutes extra during the testing phase of building your layout, you are either ice-skating uphill with some "gee ain't it neat" nonsense you shouldn't be wasting code on in the first place, or have so completely missed the POINT of modern HTML/CSS the entire thing should be thrown out and started over from scratch ANYWAYS.
Time and time again you'll see people with completed sites and layouts coming to forums like this one going "But it works in FF" or "It works on my Mac" or worst of all "But the Dreamweaver preview pane" -- just like how six years ago EVERYONE was saying "But it works in IE" -- net improvement ZERO!!! If you aren't testing across all browsers (and with virtual machines like VPC, VMWare or VirtualBox and AMP in a Box software like XAMPP there's NO EXCUSE) as you go as you build the layout -- then it's hardly a shock you might end up using a technique that doesn't work cross browser. If you've built your entire layout without even testing? /FAIL/
But of course people will still just keep vomiting up HTML 3.2, slap a HTML 4 tranny doctype on it or WORSE call it HTML 5, using presentational classnames missing the point of CSS, taking every sleazeball shortcut in the book to blazes with doing the job you are allegedly being paid for...
I'll stop now before I break into profanity at my DISGUST TO THE POINT OF NAUSEA over the industry as a whole.