You can't DO smooth movement using a canvas (at least not easily).
If you want the smooth movement, you should do as I did and use an overlay image.
Trying to do it using ONLY a canvas would be a horrible waste of resources. Ugly ugly ugly code and very slow to boot.
An optimist sees the glass as half full.
A pessimist sees the glass as half empty.
A realist drinks it no matter how much there is.