I am not sure I understand how the 96dpi at 640x480 approach would work, though, can you explain that a bit more?
I meant that every monitor would always report 96dpi when their virtual mode is 640x480, and then adjusted virtual dpi for higher virtual modes. This way we would never report a monitor dpi < 96, and break applications that don't expect it to be possible.