Since PDFDoc has a handle on a system file resource, you cannot rely on the GC to release that for you, since it might be a long time before that happens. Instead you need to force the PDFDoc.Dispose(), by either calling it explicitly, or through a 'using' statement.
You should look the PDFViewCtrl sample that comes with the SDK, and look at the Close Doc method (not sure the exact name), it has the code you want.
It is something along these lines.
auto oldDoc = MyPDFViewCtrl.GetDoc();
MyPDFViewCtrl.SetDoc(newDoc);
if(oldDoc != null)
{
oldDoc.Dispose();
}