You might be on your own with this one. I don't think I'll spot the problem from code snippits, and I lack the motivation to do a proper debug.
My advise is to set breakpoints and make sure that code is running when you expect it to.
Watch the variables to make sure they contain what you expect them to, when you expect them to, etc.
Start backwards from the problem area. Your problem is the sprite is not animating, so set a breakpoint in your drawing code, examine the vars to see if they update in a way you expect.
If they do, check your drawing logic.
If they don't, then set a breakpoint on the code that updates them. etc etc.