I think the idea is that you choose a point $x$ and a really small interval $[x,x+h]$ or $[x-h,x]$ on one side of it. This interval will be partitioned into some $I_{n_i}$'s (these are dense in the circle) and some other stuff. There may also be a piece of some $I_k$. The length of the other stuff won't change because you started with a circle rotation. Since $h$ was chosen really small, the $I_{n_i}$'s necessarily have really large indices and hence the ratio of their lengths before and after applying $f$ is close to 1. All that's left to control is the segment of $I_k$. Now you can check that for any $\epsilon>0$, there's a $\delta$ such that if you pick an initial segment of any $I_j$ of length at most $\delta$, then the length of the image of the segment is the length of the segment times $1\pm\epsilon$. (To see this, you're done automatically for large $|j|$'s (the derivative was supposed to be uniformly close to 1 for these guys); and for small $|j|$'s, the derivative is 1 at the endpoints and you just use continuity.