The primary screen has Windows scaling set to 100%, and the secondary screen is a HiDPI screen has Windows scaling set to 200%.
Running the attached test from the main display, it shows initially a cursor 1.6 times bigger than the reference red rectangle (see display100.png).
Moving the application to the secondary screen, while the best size didn't change, it shows a cursor 0.9 times the size of the rectangle (see display200.png).
It seems there is a very similar AWT issue: https://bugs.openjdk.org/browse/JDK-8240568. As noted here as well, it doesn't happen with the built-in cursors, which scale up or down accordingly.
It can be reproduced with any JavaFX version on Windows.
Running the attached test from the main display, it shows initially a cursor 1.6 times bigger than the reference red rectangle (see display100.png).
Moving the application to the secondary screen, while the best size didn't change, it shows a cursor 0.9 times the size of the rectangle (see display200.png).
It seems there is a very similar AWT issue: https://bugs.openjdk.org/browse/JDK-8240568. As noted here as well, it doesn't happen with the built-in cursors, which scale up or down accordingly.
It can be reproduced with any JavaFX version on Windows.