Finally fixed rotation; it's now correctly rotating about the origin.

Big thanks to Mekire on python-forum.org for pointing me in the
right direction!