There isn't yet a reference to how to move a sprite accordingly to a path because, truth to be told, I haven't yet implemented it in a way I'm satisfied with.
Anyway, you have the correct logic idea. The "flaw" in your capx is that you make all the movements through the path in a single tick (as you are using a "Repeat loop").
So far, I've followed the same idea, just letting the movement itself handled by an 8direction behavior.
I simulate right, left, up or down arrows pressure by checking the actual distance between the sprite and the PathFinder.getCtXPathList (and getCtYPathList).
Pseudo-code:
If Sprite is on right of NextCellInPathList => Simulate left key.
If Sprite is on left of NextCellInPathList => Simulate right key.
Etc...
As I said, I yet have to implement a satisfying way of incrementing (in your case) indexPath when the sprite is rightly positionned on the next cell of the pathlist.
Instead of going through emulation of the 8dir behavior, you might as well calculate yourself the distance and angle to go (through system math expressions) and apply some bullet behavior, or even move it in events each tick.
That's the tricky part where I don't have a releasable solution yet. Let me know if you can come up with something.