actually measure Character range is better.
Anyway a while back I played with this function and had the same problem,
yep the mesure is incorrect...
I know not any work around.
Anyway maybe you could try PInvoking with GetTextMetrics / GetCharWidth32 /
GetCharWidthFloat / etc... / ???