If it jumps back then it's probably due to the sticks generally being a little imprecise (either plain value shifts or a heavy thumb)...
EDIT: Oh, turns out C2 already has a deadzone check - right in the Gamepad object settings. Maybe see if yours is high enough?
I guess then you need a check for non-zero values - otherwise at 0,0 the angle will always be 0, thus facing right.
[IGNORE EVERYTHING BELOW] - games usually have a "deadzone" so you might want to put in a little check, like:
Gamepad.Axis(0, 0) is between values -ZZZ and ZZZ <== Some value here - I don't know what the value range for the gamepad is, maybe it's 0-1, then something like 0.05 might do, maybe it's a more usual 255, either way you could probably check debug to see the values.
OR
Gamepad.Axis(0, 1) is between values -ZZZ and ZZZ
DO THE ANGLE THING.