It is not possible to simply generate HTML in a memory line and paste it into a CHtmlView.
Our solution (which works very well) is to create a temporary html file (in the Windows temporary files directory) and go to the CHtml View for this file. Basically:
OurTempFileClass theTempFile;
theTempFile.GetStream()->Put(mHTMLString.Get(), mHTMLString.GetLength());
CHtmlCtrl theHtmlCtrl;
theHtmlCtrl.Navigate2(theTempFile->GetFullPath());
( , stdlib ++.