I don't have a windows computer at reach, so I cannot do much.
In any case, some points
display-mm-dimensions-alist is a variable defined in `frame.el'.
Its value is (("t400" 304 . 190))
Original value was nil
"t400" doesn't look like a valid display name.
Try
(setq display-mm-dimensions-alist '(t . (304 . 190)))
t without quotes means all displays, should be always valid and be
enough for you unless you want to do a screen by screen individual
setup.
(display-mm-width "t400") evals to Display name does not exist
That tells you that "t400" is not a valid display name.
What does it give?
M-: (x-display-list)
I'm curious to see how displays are named in Win32. It might not even work
as there is no X server in Win32.
(display-mm-width) evals to 508
(display-mm-height) evals to 318
but both numbers are more than 50% too big for the size of the physical
screen in mm (304 by 190)
Are you using two screens like a laptop and an external monitor?
Anyway, don't worry much, I'm not surprised that emacs or the OS
are getting the wrong info.
For the rest I cannot tell you anything. I have never used proportional
fonts in emacs. Good luck with that.