That looks good for an upper bound. If p=0, you can't take |p| as an upper bound for delta, you'd want something like |p|+1, but this makes everything else slightly uglier (but perfectly doable). Taking |p| as an upper bound for delta was pretty arbitrary, it just made sure x was positive (or negative if p was negative) and this looked a little cleaner. You could just as well take 1 as an upper bound for delta here.
In general you want to make sure your delta is small enough that the piece you're trying to bound is actually bounded on |x-p|<delta, usually you're trying to avoid zeros in the denominator or where the function otherwise "blows up"