I just found the same issue. I was able to create a hack / workaround. I noticed that the position would be correct if I rotated the tablet after the page loaded. Stayed fixed if I returned the tablet orientation. Came back on page reload. Led me to believe it was a timing issue.
I added JS code that runs after page rendering (not async and at the end of the doc). I am using setTimeout with a 10ms delay. It then applies the style.height CSS string. Nothing fancy, I copied the CSS and pasted it into the JS. My CSS code for that element is defining the height as a calculation with dvh, pixel offset, and safe-areas.
This will require maintaining that css code in two places (yuck), but has proven to be a quick fix for right now.