I think this is correct.

If I click play, and it's currently buffering, it should toggle the button to show it is playing, so I do not keep trying to click play

It's standard player UI, basically showing feedback that the clip is going to play once it is ready.

Also think of the button as showing intended state, and not actual.

Or consider buffering while playing to be a form of playing.