thanks for your comments - they were very useful and push my brain into right direction.
If shortly: original c++ code creates an image in WMF format (from Windows 3.0, you remember it, right?). I changed the c++ and started to generated EMF files (came from Windows 95).
For example, this code
CMetaFileDC dcm;
dcm.Create();
has been replaced to this one:
CMetaFileDC dcm;
dcm.CreateEnhanced(NULL, NULL, NULL, _T("Enhanced Metafile"));
I walked through all related locations and now I have EMP as the output format.
And this step has solved all my issues, I even do not convert this EMF file to BMP format, I can paste/use it directly into my C# code.
Thanks again for your thoughts and ideas, I really appreciate.