Bagration, все правильно что у тебя не работает. Ты глобально объявил 2 переменные присвоил им значения координат мыши. Теперь они ВСЕГДА одни и те же! А в главном цикле ты мышь двигаешь, координаты меняются, а ты используешь все те же переменные со старыми, не меняющимися координатами мыши.
mx=MouseX() ; берем новые(изменившиеся) координаты
my=MouseY()
DrawImage cursor,mx, my
MaskImage cursor,0,0,0
Кстати теперь раздел FAQ по B3D есть и в журнале. И ЛЮБОЙ МОДЖЕТ ЕГО ПОДРЕДАКТИРОВАТЬ!