When I animate a shape I first convert the path to a bezierpath but the first two keyframes always turn out the same whatever I do. The shape just retracts into the next keyframe. I've learned to workaround this by reseting the path but it's still annoying.
Video of my problem.
It's because of the conversion. I don't know enough technically to say why the conversion causes that to happen. It just does.
So create the shape as a bezier path rather than converting it to one and you wont have that problem. I generally never use any of the shape features that would justify NOT creating a shape as a bezier so I just leave the little box ticked all the time.