Can you do something like below?
if ((GetCharacterAt(mouse.x,mouse.y)==2)){
SetMouseCursor(8);
} else if ((GetCharacterAt(mouse.x,mouse.y)==3)){
SetMouseCursor(8);
} else SetMouseCursor(curmode);
Where curmode is a variable holding the current mouse mode, which was set each time you select cursors.
if ((GetCharacterAt(mouse.x,mouse.y)==2)){
SetMouseCursor(8);
} else if ((GetCharacterAt(mouse.x,mouse.y)==3)){
SetMouseCursor(8);
} else SetMouseCursor(curmode);
Where curmode is a variable holding the current mouse mode, which was set each time you select cursors.