There is apparently some sort of query call that takes place as part of the comments_template()
call, just as there is with loop calls.
When I put my custom function in the comments template, it works perfectly.
I tried putting the entire contents of the comments template into my custom loop-single template, and it didn’t work.
The solution wound up being placing an if{} statement in the comments template, and then setting up two different layouts based upon the results.
Now it all works like it should.