I think the problem is in Disk2VHD, how it creates the VHD or VHDX file; it for some reason leaves the EFI system partition empty.
It works perfectly when creating a VHD or VHDX from a BIOS / MBR system.
See the screenshot. On the right is the source, an UEFI / GPT machine (virtual) from which I created a VHDX using Disk2VHD. The EFI system partition contains the EFI folder as it should.
On the left is the new virtual machine, created using the VHDX made from the machine on right using Disk2VHD. The EFI system partition is empty.
(Click / tap to enlarge.)