https://bugs.winehq.org/show_bug.cgi?id=50097
--- Comment #1 from Nikolay Sivov bunglehead@gmail.com --- It's probably because of this logic:
mchit.pt.x = rc.right / 2; mchit.pt.y = rc.bottom / 2;
So the day in the fourth column is used initially, which happens to be either Wednesday or Thursday in practice. Later test tries to fix that up by adjusting 'y' in a loop, that evidently does not work very well. It's also possible that while original pt.y does point to valid column, pt.x might miss valid day rectangle, failing initial hittesting.