Looks like Web Deploy was able to do the job. Just needed to do more work on making the COM objects work.
Migrate Webpage from 2003 Server to 2019 Server using Web Deploy
I have run the below command in my 2003 Server which created a 38GB folder structure. The package was too big so I needed to use archivedir.
msdeploy -verb:sync -source:metakey=lm/w3svc/1 -dest:archivedir=e:\Site1.zip > e:\WebDeployPackage.log
Then in my 2019 Server, I ran the following command.
msdeploy -verb:sync -source:archivedir=f:\Site1.zip -dest:metakey=lm/w3svc/1 > WebDeploySync.log
The output did not show any errors but the log only showed below. So not sure what is wrong
Info: Adding child metaKey (/lm/w3svc/1/ROOT/AspBufferingOn).
Info: Adding child metaKey (/lm/w3svc/1/ROOT/AspEnableParentPaths).
Info: Adding child metaKey (/lm/w3svc/1/ROOT/AspScriptTimeout).
Total changes: 3 (3 added, 0 deleted, 0 updated, 0 parameters changed, 0 bytes copied)
Can someone please help?
Many thanks.