Oh, you had the GameObject enabled but the SkeletonAnimation disabled.
That's just how it currently behaves.
A disabled SkeletonAnimation means it won't animate or update the mesh. You can see this by enabling and disabling the SkeletonAnimation component mid-animation.
It follows that if it starts disabled, the animation won't be applied, and the mesh won't be updated.
I suppose what you see in Edit mode becomes a miscommunication in that case, but it's supposed to show the user what the initial animation will be in the typical use case.
You may want to disable the GameObject rather than just the component. And if you have other components that need to be enabled, make sure these are on separate GameObjects from the Spine GameObject. Otherwise, you were correct in calling Update and LateUpdate yourself.