You would lose a lot of significant digits if you do it that way. I think that if derivatives have to be evaluated numerically, then you would be better off using some extraplation orseries technique. E.g. you can write the Taylor expansion of a function formally as:
f(x+t) = exp(t d/dx) f(x)
The symmetric difference with step t is thus given by:
Delta_t f(x) = [exp(t d/dx) - exp(-td/dx)]/2 f(x) = sinh(t d/dx) f(x)
So, this means that formally we can express the derivative operator in terms of the finite symmetric difference operator as:
d/dx = 1/t arcsinh(Delta_t) = 1/t [Delta_t - 1/6 Delta_t^3 + ...]
So, to comnpute the derivative at a point, all you need to do is to repeatedly apply the symmteric finite difference operator with some stepsize t. The smaler you take t, the faster te series converges, but then you lose significant digits. So, you should take t not too small and a few terms of the series.