When your cursor is one size while hovering over the desktop, and another size while hovering over an application window, it's likely because the setting (Xcursor.size, an X resource) was set after your desktop environment was launched, like by a startup script or settings daemon. So some of the DE's windows (like panels or the desktop itself) will use the default cursor size setting which existed when they launched. A solution is to set Xcursor.size in a location which loads earlier than your DE settings daemon. An obvious place for this is ~/.Xresources.
When your cursor is one size while hovering over the desktop, and another size while hovering over an application window, it's likely because the setting (Xcursor.size, an X resource) was set after your desktop environment was launched, like by a startup script or settings daemon. So some of the DE's windows (like panels or the desktop itself) will use the default cursor size setting which existed when they launched. A solution is to set Xcursor.size in a location which loads earlier than your DE settings daemon. An obvious place for this is ~/.Xresources.