Можно попробовать сравнивать их QVariant значения.
Ну "почти"
Так он сравнивает только CursorShape, все кастомные курсоры (shape = BitmapCursor) равны. Но тогда можно сравнить пиксмапы, здесь уже проходит через QVariant (сравниваются cacheKey)
Спасибо