Generally you should only rotate orientation matrices and avoid doing basic operations on them like addition and multiplication.

If you want a quick fix, you can just add

own.worldOrientation.normalize()

after that line. However, If you’re just trying to get the objects to face the direction they’re moving, I would recommend getting rid of that line doing something like this.

The scale transformation involves the diagonal of the matrix ([0,0], [1,1],[2,2]).

Edit: this belongs to the orientation transformation, which must be multiplied with the current transformation matrix. I’m not sure if the result is a scale on each single component. It might be.