Since it’s complaining that your buffer is too small you could always try increasing the buffer size to see what happens.
My recollection is that windows cursors have to be a specific size or sizes. I could be remember incorrectly, either way the error seems to say a lot about your buffer size.
Windows cursors need to be a derivative of 8 - off the top of my head they are: so 8, 16, 32, 48, 64, 96, 128 - and they must be the same size both horizontally and vertically.
I said that it needs 50x50 on the very begining of my post
As far as I remember the standard size 48x48 refused to work, it was broken like in tonihele’s screen, and the ‘magic 50’ is some dirty hack.
You did something wrong. My code is working with transparency channel in .png images. Are you loading .png file into texture directly using asset manager?