How to scale a 2D sprite that's in a SubViewport?

Godot Version

Godot Version 4.2.1

Question

I have a 3D sprite that get its texture from a child subviewport that has a 2D sprite as its child I am doing this to create a 2D sprite in 3D world. When I try to scale the 2D sprite through code it doesn’t scale evenly and skews towards the bottom and left, but if I change the position the skewed direction also changes. I want to be able to scale the sprite from the center of the 2D sprite.

example
The code I am using to scale the sprite is:

scale.x = 1.2
scale.y = 1.2

this code is contained within a script attached to the 2d sprite. I also can’t just make the sprite bigger in the scene because I want the player to be able to scale the sprite I am just using the number 1.2 to test. Thank you for any help.