It seems like it’s reading the SVG directly will have additional pixels or whatever ! I tried to debug the centreX, centreY of SVG bounds, it’s changed on rotation.
Anyway, I solved the problem using SVG Path Helper to get the path and rotate it, and it works fine with me.