One of the pains of VNC is that I can't live-adjust the resolution to match the browser after setting up the device D:, the screen should scale to your browsers size which should make things better, is it failing to do that? I'll see if I can reproduce
Would you consider using Xrdp and xorgxrdp, which can live adjust the display size?
You might need a newer version of Xrdp or xorgrdp, but I have Guacamole connections to Linux desktops that do this smoothly.
I have a few experimental images using xrdp at the moment, the main reason I haven't turned it on yet is xrdp is really beefy on the machine and takes up a lot of the very limited resources (these aren't big computers) but if I can solve that or afford to put folks on better machines I'm definitely turning it on :D