It is due to numerical error. Your Neumann BC can only ever be as accurate as your discrete approximation of the derivatives. You can use a finer mesh or higher order elements if this is a problem, but I don’t expect errors of the order of 1e-9 to be an issue…