The first consideration is that different versions of the same browser may have different rendering backend versions (Webkit in the case of Safari).
A look at wikipedia's Safari version history shows that 5.1.7 is using webkit version 534.57.2. Meanwhile Mac OSX Safari is running 7.0 for OS 10.9 and 6.1 for the latest version on 10.8. Realize that Apple does do a reasonable job at pushing updates, Safari 7.0 is running Webkit 537.71 and 6.1 is running Webkit 537.43.58. These are all different versions and will likely have some differences in rendering.
The next consideration is that the windowing widgets that the browser uses is different on differing operating systems. I've recently had an issue where Chrome (latest) on Linux renders <select>
list one way and Chrome (latest) on Mac OS X renders it differently. Different windowing widgets.
You can get an idea of this differing widgets by looking at Styling single selection menu control option groups (optgroup elements) with CSS
This really boils down to You need to test every supported browser and operating system as a separate entity and debug it as such. The 'same' browser on a different operating system isn't the same.
The thing to do is look at what version of Chrome you are using, what version of webkit (if its one that is using webkit) is in use, and then dig into the change logs for webkit (and trac.webkit.org). You might what to consider trying to build a consistent version of webkit for both Windows and Mac and then see if you can find the issue in your code, or if not, log an issue with Webkit. Please note, that you really will need to look into creating an SSCCE version to work from - for yourself and if you hope to have anyone look into it to fix it.