OK, it looks like I solved my own problem. Just in case anyone else is interested, here's what I found:
CPaintDC dc(this); //get a DC for the control
//The next several lines create a compatible bitmap in memory
// and draw a solid light green "bitmap" on it,
// then select that bitmap into the DC in memory
pDCMem = new CDC;
pDCMem->CreateCompatibleDC(&dc);
bmp.CreateCompatibleBitmap(&dc,rc.Width(),rc.Height());
pOldBitmap = pDCMem->SelectObject(&bmp);
CBrush brush;
brush.CreateSolidBrush(RGB(122,255,122));
pDCMem->FillRect(rc, &brush);
//After drawing on the DC in memory (text and whatever else)
// use BitBlt to merge the bitmap in memory with what's on screen
dc.BitBlt(0,0,rc.Width(),rc.Height(),pDCMem,0,0,SRCAND);
//SRCAND combines the src and dest DCs using boolean AND
//Then clean up
pDCMem->SelectObject ( pOldBitmap ) ;
delete pDCMem;
And it works. Now the CStatic is light green, with text on it (which I did not include in the code snippet) and the bitmap "behind" it can be seen greenishly colored through it.