stdole2.tlb does not need to be referenced in the manifest; like most type libs I expect it is only used at compile time and not at run time.

Your manifest for the vb6 exe could/ should end up looking something like this, which was generated using MMM for inclusion of the vbprndlg.dll when it is placed in the DEPS folder within the App folder;

Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">

  <assemblyIdentity name="My.Name.Computer.Software.MyAppName" processorArchitecture="X86" type="win32" version="6.74.0.39" />
    
  <file name="DEPS\vbprndlg.dll">
    <typelib tlbid="{8620B873-D801-11D2-AC47-00600832A1F6}" version="2.1" flags="" helpdir="" />
    <comClass clsid="{2E2E2172-D819-11D2-AC47-00600832A1F6}" tlbid="{8620B873-D801-11D2-AC47-00600832A1F6}" threadingModel="Apartment" progid="VBPrnDlg.PrinterDlg.1" description="PrinterDlg Class" />
  </file>
  
</assembly>
The typelib tlbid string corresponds to that reported in the app's vbp file for the dll, the comClass clsid for the dll was supplied by MMM but I guess it may be tracked down in the Windows registry.