It looked like you had to run backward and forward again to push the block again, if the movement of the block (accelerate / move / decelerate ) is one part [eg, even if the user still pushes always accel/decel] I think it would be better.

(Looks like to much work for a simple task otherwise, but probably I am wrong, I haven't played it (: )