I heard about this ages ago, but it only just seems to be kicking in. The theory behind it is that while most people who shop at M&S food do so because they like their products and its reputation for quality, brand loyalty kicks in for certain products (Heinz Ketchup and Kellogg's Cornflakes were two of the brand highlighted). If M&S stock these too, the customer doesn't have to go elsewhere to complete their shopping.
While it's an intriguing idea and I can see the thinking behind it, I'm not convinced it will work. I'd wager that very few people do their 'big shop' at M&S, so will have purchased things like their favourite brand of coffee when doing that. I can see people shopping in M&S thinking 'ooh, I need some ketchup actually' and grabbing the Heinz bottle, but if it hadn't been there would they really have gone to the trouble of going elsewhere to get it - or would they simply have thrown the M&S version into their basket?