x - x^(1/3) - 2 is not a polynomial.
Adding Em would ward off divide by zero errors. It's much more likely for a function to have two floating point numbers where it evaluates to the same value than to have a function that has two points where the difference is Em. The only place where the difference of floating point representations could evaluate to Em (or negative Em), for continuous functions, is about the origin, if the function intersects the origin, unless the function has a zero where the first non-zero derivative is absuuuuurdly infinitesimal. (In those situations usually you'd be using different units to scale your function up, anyway.) You could also get the value +/- Em for laaaarge values of x, if lim (x->infinity) f(x) = 0.
For example, if you're using doubles to represent your numbers, and you have two numbers 2 <= x1 <= x2 <= 3, then evaluating (x2-x1) will produce one of the discrete values 0, 2^-52, 2*2^-52, 3*2^-52, 4*2^-52, 5*2^-52, ... (Maybe the exponent is -53 or -51; I don't care to check.) If it's 0, then adding Em makes the denominator nonzero, and if it's nonzero, then adding Em doesn't change the denominator.
Thus adding Em in your case (where your root is not zero, and where you don't have two values xi, x{i+1} such that f(xi) = f(x{i+1})) has exactly no impact on convergence, and no impact on any of your xn values.