There's not a problem in applying DBE more than once.
However... I would suggest to spend on the first DBE as long as possible, by adjusting sample placement and parameter adjustments.
To me - and this is a very personal approach (feel free to criticize it, it may help me improve!) - the reasoning is simple and I've said it several times already...
Whether you're trying to fix a vignetting (check your flat acquisition/calibration!) or a gradient, it is in the first DBE when you can get a good picture of a background model that looks like such gradient or vignetting.
Once you're correcting over an image that has already been DBE'd, your model will no longer look like the gradient/vignetting you're trying to remove, so you're increasing the guesswork when it comes to evaluate the results (the results are not only the corrected image, but the image AND the background model).
I always check my background model BEFORE I check the corrected image. If the background model does NOT look like the gradient I'm trying to correct (ie. it has lumps or imprecisions that can not be the way a gradient looks like) then I'm either "oversampling" (putting too many samples), putting samples in the "wrong" place, or my parameters are too relaxed/coarse. If the model looks ok, then I check the corrected image. If it doesn't, I also check the corrected image but most of the time, if not always, I undo and try to improve the model... By following this method, I rarely need a second DBE.
Now... Usually, a second or third DBE should address problems that the first couldn't solve, and these, ideally, should be very easy to spot/identify (so you know how your next model should look like) - for example, your gradient may be very gradual, but it starts very strongly, so maybe the smoothing factor/etc used in the first pass worked well in modeling most of the gradient but not the "abrupt" area, etc. Personally, going for more than 2 DBEs, with a few exceptions (like the one I just mentioned), I think it's either overdoing it or a somewhat careless use of the DBE in the first pass.
Another of such exceptions would be I guess applying DBE over a RGB image. Here, each channel is going to have a life of its own, so identifying the shape of the background model is often wishful thinking, as it's a mix of three different models - unless you take the time to break the source image and the model into the three RGB channels, and examine one by one, but then, why not just apply DBE on each channel independently? So when applying DBE over a tricolor image, you may simply examine the results (the model too but not as crucial, depending on the case), see if the color is homogeneous across the entire image, and if it isn't, run the DBE again, etc. Does this make sense?
Once again, this is my very personal philosophy about using DBE. It works well for me (well, most of the time

) , but like I said, I'm open to other, better ways to use it...