После долгих мучений получил такой вариант решения проблемы (может кому пригодится):
//hDC - контекст устройства типа HDC
HBITMAP hBmp = (HBITMAP)GetCurrentObject(hDC, OBJ_BITMAP);
QPixmap pixmap(QPixmap::fromWinHBITMAP(hBmp));
DeleteObject(hBmp);
QPainter painter(&pixmap);
// Здесь рисуем с помощью painter
hBmp = pixmap.toWinHBITMAP();
SelectObject(hDC, hBmp);
DeleteObject(hBmp);