Issues Controlling a Digital Servo

I've also tried the Arduino sample servo sweep code. In this case the servo moves to 0, then rotates about 120 degrees, then stops and makes the high pitched buzz with no further movement.

It's probably hitting a mechanical stop. Not all servo are designed to move 180 degrees, 120 degrees is a common range for R/C servos. Send a 1000usec and then a 2000 usec pulse to determine the designed normal travel range. Most servos will have a little 'over-travel' above and below 1000 and 2000 respectively, but how much over-travel varies from servo to servo. Don't force it to a position where it's buzzing continuously, it's not showing you love when it does that.

Lefty