В этой статье проблема данная не описывается, но природа ее мне ясна: ссылки, вписанные динамически, являются все еще частью родительского документа, потому и ссылка идет на саму страницу, а не внутри фрейма. А через frame.document.write() создается именно новый контент самого фрейма.
Надо будет еще причесать и оттестировать и вылью коммит.