As @amandus already pointed out: the recommended route is actually not the fastest one, but rather the best possible alternative which from the perspective of a pedestrian seems to be the most reasonable one (e.g. prioritizes streets with sidewalks rather ones without, etc…).
I see your point now! This might be confusing indeed, however, queries with preference = fastest are internally translated into recommended. It is a legacy thing which should have been deprecated already a while ago… I’ve set up an issue for it.