The PR misses implementation for OS X and Windows. If you won't be adding support for these OS, the PR won't get directly accepted, but someone might one day rebase their work on your commit.
As for the implementation, what exactly does "cursorId" represent? How would the user know what cursor they're setting? You also used the same variable for the Windows implementation, which makes you wonder even more, who could guarantee that the cursorId on Linux uses the same cursor style as on Windows?
I think we can't deal with a simple integer here but instead should use an enum or similar.