I think the key question is whether recovery runs are allowing recovery. The implicit assumption of the 3-days-a-week program appears to be that they do not, or at least not for the average recreational runner.
There is probably something to this, and there have been various approaches to deal with the issue: Running with a heart rate monitor on recovery days to make sure you go slow enough, forcing yourself not to run faster than a certain pace, etc.
If you cannot discipline yourself sufficiently to make sure the recovery days promote recovery, it may make sense to do cross training instead.
On the whole, however, there is more evidence in favour of running on recovery days than against it. The fact that _some_ people have done well with little or no running on off days neither means that everybody will do well, nor that these same people could not have done better with more running.
Until someone does a real test, taking (say) 150 runners of varying talent levels, dividing them into three groups of 50, and making one do only cross training on off days, one forced to run easy on off days (e.g. with a HRM), and one running at a pace of their choosing on off days, I would go with the accumulated evidence so far, i.e. run, but make sure to keep it easy on off days.
Winston Churchill smoked, drank and was overweight and still lived into his 90s. This does not mean that smoking, drinking, and gaining weight will make you live into your 90s. It _does_ mean that if you're lucky and have the right genetics, it is possible (though probably not likely) to do so. If this example is enough for you to start smoking and drinking heavily, then by all means run just 3 days a week when trying to optimize your marathon training.