It should be exact at the points you supply it, and it does work for that. Unfortunately since the algorithm only sees points and not the whole polynomial, it's a left hand doesn't know what the right hand is doing situation...and you still get some error between the points you supply. Although I have tried it with some polynomials, and it's pretty convincing.