Thank you for posting the question in Q&A forum.
I have done some researches and found most similar cases (Memory Demand higher than Assigned Memory) occurred when dynamic memory is enabled. But in my lab environment, I also found one VM had the same situation as yours. But due to the limits of lab environment, I have no chance to proceed further tests.
In summary, Memory Demand is derived from performance counters, which is the amount of memory required at this time to fulfill the requirements of what is going on in the running VM. The Memory Demand is a moment in time. It is constantly changing as the running processes in the VM change.
Hyper-V showing much higher memory demand than displayed in guest OS
Re-calculate memory demand on a vm in Hyper-V
You have mentioned that you never saw the VM memory usage was going above 3GB. Was you monitoring the memory by Task Manager. If so, we do not suggest it.
Windows Task Manager doesn’t show real usage of CPU and memory by a virtual machine. This is because the Task Manager doesn’t identify machines as being virtual and cannot know how resources are provisioned to a VM.
We suggest that you could use RAMMap for VM memory monitoring. There is one Count named "Driver Locked". It will be displayed if there is dynamic RAM once being assigned to VM. So, if your VM really asked for additional memory exceeding the assigned memory, the "Driver Locked" will show it. If there is no "Driver Locked" during the monitor, it means your VM didn't require more memory, you can just ignore the Memory Demand.
What is Driver Locked memory?
If the Answer is helpful, please click "Accept Answer" and upvote it. Thanks.