I'm looking to convert a transparent PNG image as an ImageSource into a System.Drawing.Icon that respects the transparency of the PNG.

WPF can somehow do this internally if you set the icon for a window to a PNG ImageSource, but is there any way I can do this manually? Specifically I need this to set the system tray notify icon and I really want to avoid using clumsy .ico format resources.