First of all, 0.523599 radians == 30 degrees, so that's not the problem.
The problem is you can't just set the rotation (or position, etc.) of a RigidBody2D, because a rigid body is controlled by the physics engine. Because of this you might even see an instant during which your body snaps to 30 deg, but then immediately goes back to rotating based on its angular velocity.
You can't control a physics body directly, you can only apply forces or impulses to it, and then the physics engine takes over.
To quote the documentation for RigidBody2D:
Note: You should not change a RigidBody2D’s position
or linear_velocity
every frame or even very often. If you need to directly affect the body’s state, use _integrate_forces
, which allows you to directly access the physics state.
I've not looked at the tutorial you're referencing, but this is definitely not recommended use of RigidBody2D.