Hi,
XGraphics gfx = XGraphics.FromPdfPage(page);
means, that this graphics can draw only to this one page only. It's the reason why you have only one page in your document.
Create Document using MigraDoc, than render entire PdfDocument (with all pages) and after this just modify some pages from rendered instance.
Code:
Dim Renderer As New MigraDoc.Rendering.PdfDocumentRenderer(True)
Renderer.Document = Doc
Renderer.PrepareRenderPages()
Renderer.RenderDocument()
Renderer.PdfDocument <---- here's your document
There's an example of mixing Migradoc and PdfSharp in sampes section.
Hope this helps.