I can understand your confusion, but no, the Atlantic is not incorrect. The trouble is, "set" has many different definitions. Take a look at its wiktionary entry! Four different etymologies and dozens of definitions for each!
You are likely thinking that this "set" is "the scenery for a film or play." If this was correct, then "scene" might be a better word.
However, the actual meaning of "set" in this sentence is not even a noun. It's a verb. "(transitive) To locate (a play, etc.); to assign a backdrop to, geographically or temporally."
Another way you could rephrase the sentence, and keep the same meaning, would be:
Original: ...during a rehearsal for a gunfight set in a church...
Variation: ...during a rehearsal for a gunfight located in a church...
Both of these sentences are fine, and there is nothing wrong with the original.