As you know IE 6 is quite brain dead when it comes to PNGs. There is some PNG8 support, but PNG32 transparency is non-existent. But there are a number of workarounds. I have had some success with DD_belatedPNG (dillerdesign.com). It supports repeated and positioned background images too which is not normally the case with all of these workarounds that are out there. Even though, I have pretty much abandoned PNGs for IE6, but use them with all other browsers.
Basically, I design a site with PNGs, completely ignoring IE6. Once I have all the images and CSS files in place, I take a look at IE6. I convert all PNGs to transparent GIFs and make the site look reasonable with IE6. It will never look as good as with other browsers, but hopefully eventually IE6 will go away.
Now, to make sure only IE6 uses the GIFs, I use the DNN STYLES skin object. At the bottom of my skin, I add the following:
<dnn:STYLES runat="server" id="StylesIE6" Name="IE6Minus"
StyleSheet="css/mainIE6.css" Condition="LT IE 7" UseSkinPath="true" />
As usual, the normal skin and its css files will be included by the skin. Then, this statement will pull in my css file (mainIE6.css), but ONLY if this is IE6 or below. Because it's included last, I can use it to override all the normal styles and replace the PNGs with GIFs. Of course, for this to work correctly, I have to isolate all IE6 "stuff" in this css file. This works well for background images. Inline images I generally simply convert to background images so I can css style them.
I find this approach (quickly) produces decent results without any hacks or workarounds. The workarounds usually drag down the performance of the site quite a bit, particularly if you have lots of PNGs. This approach also exploits a nice built-in feature of DNN (the Styles skin object) while keeping 100% within the spirit of the DNN skins. Anyone who follows you who has to maintain your site will thank you.