Hallo,
ich kann nur sagen, das ist der normale Weg.
Warum es bei deinem Projekt nicht immer klappt, kann ich naürlich nicht sagen. Ich würde den Code so einsetzen und dann versuchen herauszufinden, ob das Setzen des Cursors an die falsche Position reproduzierbar ist.
Gruß
M.O.