I worked on this problem for a bit. What's going on is the game relies on the OS-provided C runtime libraries ("msvcrt"-style things) to do its math. Wine's implementation of these libraries does not match Windows's perfectly. If all players are using the same implementation, then they will agree, and there are no problems, so people think it is working. But if a player on Wine tries to play against a player on Windows, they will fall out of sync because the math errors eventually add up.
That was as far as I was able to take it. Another much more skilled dev at CW dug in a lot deeper and wrote a blog post about it[1], but as far as I know the problem remains unsolved.
[1] https://www.codeweavers.com/blog/rbernon/2022/9/12/ucrtcring...