Making mistakes is human, and I do not think they should feel bad for what they have done (and for not correcting it), and this is coming from someone who cannot steal the bags that now cost 20 pence at Tesco and even went to buy imaginary food at Waitrose after I forgot to pay another time...
I'm always going out of my way to keep things fair and can be quite rigid about this, never even realized there are shades of gray there.
Innocent mistakes are incredibly curious beasts.
I've seen enough of this in a local supermarket (Albert Heijn, a large chain in NL), which has switched to self checkout + random checks on a lot of checkout lanes.
Older people that are more or less forced to use the self checkout because there are now too few cashiers end up making mistakes and are then treated like shoplifters if they end up with a random check. Quite frustrating.