Check out this editor I've been toiling over forever.
I finally got transparent blitting working in GDI.
Pretty simple really. Link with msimg32.lib and use TransparentBlt(). It's faster than writing your own and it stretches/shrinks images to fit the destination rectangle. Nice...very nice.