I think so, make sure you use (UUID=) format, instead of (hdx,y) format.
(hdx, y) has different values for the same logical volume in GRUB2 and inside Windows kernel, whereas (UUID=) has same value for both GRUB2 and Windows kernel.
When you use "vbootedit create" to create a boot menu, UUID is automatically used.
if you use (hdx,y) format, the vboot disk driver won't resolve the correct vhd path. You MUST use UUID= format.
For example, for logical drive D:, if you use (hd0,5) for GRUB2 inside grub.cfg, the vboot driver will use \Device\Harddisk0\Partition5 as the path for vhd, which is not correct.