I've been attempting to use xHyperV.
I've tried the multiple nodes approach.
That obviously has the flaw that it's trying to create the vm on a vm that does not exist.
I've tried 1..VmCount | %{ Create VHD, Create VM }.
That has the issue that the vhd/vm object already exist when it tries the 2nd time.
I'm out of ideas here.