Really ?
But, did you change the tempo ? Is your time starting point still together with your bar startibg point after changing project tempo ? If it does, I need more explaination to achieve the same result !
Maybe you’re right ! But I don’t find the way !
Why is the display offset based on only time code ? Why ? I must make calculation that never result on a precise point to have the bar & the time starting at the same time ! And it’s impossible because one is based on timecode and the other on time untill millisecond !
I always start my projects (made a template) with 18 bars in the bar offset to have place for sysex, storage of different stuff,…etc… But my projects are not always 120bpm ! So even if I achieve to set the display offset to have time and the 1° bar starting exactly on the same point, if I modify the tempo, the time offset doesn’t change (which is normal : only the tempo has changed, not the time !), so I need to find again the good time display offset to have time and the 1° bar starting exactly on the same point…
But as you said, because the Display Offset is based on the Time code, I can’t have time and the 1° bar starting exactly on the same point… 
Here, on a 84bpm project, I can’t have the 0 time closer to the left locator (which is on the 1°bar starting point) than on this jpg :

And with 60fps frame rate ! Ok, it’s very close… But on a 64bit system, one could hope to have some accurateness !
A simple “start time & bar at the same point” feature in the project layout menu would resolve this issue quickly and should not be too hard to code… And should have appeared with this project layout window (years ago !).