I agree the ability to load custom mouse cursors should generally not be used on websites, but it’s very useful when developing HTML5 games that require you to point and click on things.
If you draw a mouse cursor manually in your game (“software” cursor), it will suffer from a 1-frame delay, which is noticeable even on 144 Hz monitor. You could use extrapolation to make this delay less visible, but this will make the cursor jitter around when it moves. In contrast, a “hardware” cursor is much more responsive and doesn’t jitter at all – it’s on the same level as the default OS mouse cursor.