Many thanks Marco, much appreciated. Interestingly, if you use solve with the expression equated to zero it also works (in my original post I'd tried Solve without equating the expression to zero).
Clear[del]
del[x_] := Module[{y, dP, res, OP},
res := {y} /. Solve[y^2 + 2 y - x == 0, y];
OP := res[[1]];
dP := OP + 1;
Nest[(# + dP/#)/2 &, 1.5, 2]
]
del[name] /. name -> 3
Can't figure out why this works and FindRoot doesn't.