File systems put lots of file tracking information on disk. And if the blocks on the disk change at all, that tracking information is out of date. When this occurs, you get file corruption,
chkdsk, and pain.
Differencing disks work by tracking the blocks that have been written since the differencing disk was created. New writes go into the child VHD (or AVHD) and reads come from that child if they exist there. If the block corresponding to the read is not in the child, it comes from the parent. The file system tracking structures are rewritten frequently and tend to exist mostly in the child. (Even if this last part weren't true, there would still be a problem here.)
If you mount a parent VHD separately and change the file system on it, many of the blocks that are represented in the child will be changed in the parent, and thus be out of date in the child, including some of the tracking structures. So if you ever try to mount the child VHD again, it will then try to fetch things from the parent that are now misaligned. This will be seen as the corrupt file system that it is.
Many people end up asking the question that you just asked. Their confusion generally stems from not understanding that disks deal in blocks, not files. They expect that a VHD (which is a virtual block device, not a file system) exposes files to a VM. It doesn't. It exposes only blocks. The guest OS then lays down a file system of its choosing. The virtualization system (Hyper-V in this case) knows nothing about the files, only the blocks.
What you were really hoping for is a differencing file system, not differencing disk. Those exist, as network-attached storage. Windows doesn't boot from remote file systems though, so they probably won't solve your problem.