How can I make smaller steps with my servo?
Your pin frequency is far too low. This establishes the basic clock used to produce the PWM.

You normally want the PWM signal to have a period close to 20 ms, which corresponds to an update rate of 50 Hz. The pulse width needs to vary between 1 and 2 ms. If you want 200 steps to cover this range (-100 to +100), the pin frequency (PIN_FREQ) needs to be

$$\frac{200}{2\text{ ms} - 1\text{ ms}} = 200\text{ kHz}$$

If you want to update at 50 Hz, that means that the cycle length (CYCLE_LENGTH) should be

$$\frac{200\text{ kHz}}{50\text{ Hz}} = 4000$$

and to vary the pulse width between 1 ms and 2 ms, you use duty cycle (dutyCycle) values between

$$200\text{ kHz} \times 1\text{ ms} = 200$$

and

$$200\text{ kHz} \times 2\text{ ms} = 400$$