This is my first post, having become hooked in late May to this addictive hobby. I now have a frustratingly-weak (~1800-1900 at 2+6 or 40/4 TC) chess engine all my own .

I forget where I got this position. It was an example of perpetual check/three-fold repetition when white is to move, whereas if black moves first, he wins.
[d]qn6/qn6/pp6/6k1/4R3/8/4R3/K7 w - - 0 1
My question is what should be the minimum depth an engine needs to declare this a draw as white? How does this number change (roughly; I understand this depends on the R settings, etc.) with various pruning techniques (LMR, null move, futility)?
While my engine understands repetitions and indeed spits out a ton in debug mode, it still fails to see the draw at depth 16, instead playing the losing 3.Rg2+ after a good start with 1.Re5+ Kf6 2.Re6+ Kg7
Thanks,
-Erin