Steve Austin said:you are right. There are specific front mechs for specific chain widths, but you and your bike shop is wrong to suggest using the wrong size front mech would cause the mech to push the chain over the edge of the outer ring.
that would be caused by your limit screws being adjusted badly........
yes, it was. But with the wider 8 speed mech, it was obviously the case that having the limit screw adjusted loose enough to enable the inner plate to move the chain far enough, was causing the outer plate to be too far out to prevent it throwing it off.