se scrivi un nodo di testo come pretendi di inserirvi dentro tag che vengano considerati tali?
se usi i metodi del DOM devi rispettarlo in tutto e per tutto, non s' improvvisa

quindi torniamo all' idea dell' iframe, che forse ti semplifica il procedimento
(nel fragment non mi risulta sia possibile iniettare codice via innerHTML)

codice:
window.onload=function(){
	var ifrm=document.createElement('iframe');
	ifrm.style.display='none';
	document.body.appendChild(ifrm);
	ifrm.doc=ifrm.contentWindow.document;
	ifrm.doc.open();
	ifrm.doc.write("<html><head><title>Pagina da Salvare</title></head><body><table width=100% height=100%><tr><th><hr>Pagina da Salvare<hr></th></tr></table></body></html>");
	ifrm.doc.close();
	ifrm.doc.execCommand('SaveAs','false','pippo.htm')

}
ciao