To flip the picture, you don't negate the height of the source -- you negate the height of the destination. To go with this, you have to specify the bottom of your destination rectangle as the origin, so your call would looks something like this:
StretchBlt(pdc, 0, h, w, -h, dc, 0, 0, w, h, SRCCOPY);