All of your phrases are reasonable. I personally would avoid the math, and say "I ordered seven donuts, but I only see five." This is clear, it communicates accurately, and it limits itself to facts.
"I only see" avoids placing blame or saying whose mistake it is.
It also better matches what is on the sales slip. The sales slip will either say "7" or "5." There isn't going to be any number "2" on the sales slip.
"Two doughnuts are missing" vaguely suggests that someone actually counted out seven, and then two were taken away. They rolled under the counter, or were absent-mindedly given to somebody else. "I only see five" states the facts with out suggesting anything at all about what happened to the two doughnuts.
But all this is overanalyzing. In real life, all of your phrases are clear, and all are polite enough. Telling someone that you think they made a mistake is always going to be unpleasant no matter what words you use.
P.S. "Donuts" is a correct spelling, but I am an old guy and I personally prefer the spelling "doughnuts."