К сожалению, ни одно из предложенных решений не работает для меня. Кажется, они являются хорошим решением и, вероятно, будут работать по другим сценариям, но не в моем случае.
Однако я нашел решение, которое работает:
Я изменил значения полей OffsetX и OffsetY матрицы следующим образом:
OffsetX = OffsetX - M11 * hx - M21 * hy + hx;
OffsetY = OffsetY - M12 * hx - M11 * hy + hy;
Где hx - половина ширины, hy - половина высоты спрайта, а M11, M12 и M21 - соответствующие поля матрицы.