I wouldn't say that re-stealing is the best way to get deep but it definitely helps. It lets people know that you're not going to give up your blinds without a fight, it can keep a lag in check who raises a lot pre but doesn't play 3-bet pots, if you do it as a
bluff then pick up a big hand against the same stealer it could win you a big pot. There are tons of advantages to doing it. The biggest thing I would consider is your image and your past history with your opponent. As far as what level I like to play on for re-steal it would be lvl 4.
Your play
--Should be fairly solid without stepping out of line to often, or just not getting caught yet.
How you preceive your opponents play
--Is he lag, tag, passive, all around solid, ect? Looking for a high ats% or a tag who, for a good reason, I feel is on a steal.
How your opponent preceives your play
--You should know this, not have a guess at it. If your opponent isn't thinking about your hands and how you're playing then don't consider the re-steal
How your opponent perceives how you perceive you opponent play
--Have you been betting back a forth a lot, playing hands ect This is were table talk in a live game can help you out tons. If a player is obviously getting frustrated about your play then be ready for a 3-bet bluff preflop from them. (another thread)
I'm basically trying to say that if you want to re-steal make sure that you have a history with the opponent, be up against a player who has an idea of what they're doing, and haven't shown obvious signs of frustrastion towards your opponents raises in the past. The 3-bet might not get the respect your looking for (a fold) if you don't respect, or are getting frustrated by, your opponents play and he knows this.
This actually got me thinking a lot about stealing and when it has and hasn't worked for me. I'm probably going to re-read this in a hour and hate what I wrote but there's some good ideas in here.