I see your point. However, theft in effect increases the cost of purchase, which changes everything.
The easiest way to get to the bottom of the answer is thinking of a simple scenario but in extremes.
A shop sells one item only, has no thefts, purchases the items for 10 each, and sells them for 15 (making 5), and sells 10 per hour (making 50 profit per hour).
(15 sale price - (10 cost)) * (10 sales) = 50 profit
The shop also knows that (through a previous trial), that if they sell it for 16, that they will only sell 8 per hour (making just 48 per hour). So selling at $15 is optimal.
(16 sale price - (10 cost)) * (8 sales) = 48 profit
The neighborhood goes down hill and thefts start. At 15 sale price, for every theft, the shop needs to sell two more items to make up for that theft (10/5) and break even.
In an extreme example, if for every 2 sales there is 1 theft, the shop will never make any money.
(15 sale price - (10 cost * (1.5)) * (8 sales) = 0 profit
(1.5 is based on having to buy 3 items per every 2 sold (3/2 = 1.5), effectively pushing the cost price up to $15.)
So, even though selling 16 or above meant less overall profit when there were no thefts, now selling at 16 would give 8 profit per hour.
(16 sale price - (10 cost * (1.5)) * (8 sales) = 8 profit
In this example, this means that without theft, 15 is the optimal price, but with theft, 15 is no longer the optimal sale price.
At a 5% theft rate (rather than the 50% above), it is better to keep selling at 15 (plug in the numbers to see). At a 10% theft rate, selling at 15 or 16 give the same profit. Anything above 10% means increasing your price is now more profitable.
It all depends on the situation really, mainly the current profit margin, how much increasing the cost decreases sales, etc.
But the above should prove that theft does indeed push the optimal price higher, and does pass the cost on to the customer.