I don't think it's a bug, it's a kind of quirk of the custom movement which is by design.
Your actions happen in this order:
1. Set angle of motion
2. Accelerate
When the object is created it has zero speed, which also means if you ask for its angle, it has no motion and therefore no angle and just returns 0.
If you set the angle of motion of an object which is not moving, it effectively does nothing. The object is not moving so has no angle of motion, so there's nothing to change. Then when you do accelerate, since it has no angle of motion it uses 0 and goes to the right.
If you do it the other way around - accelerate then set the angle of motion - it works, because as soon as you accelerate there is an angle of motion, and that can then be set.
So, closing as not a bug I'm afraid...