I'd go with Stephen Davis. He may not be 100%, but at least you know he'll get a workload with Deshaun Foster out. The Philly run D is also not as good as the stats indicate - they were horrible last year.
With McGahee there are just too many unknown variables. First of all you're guaranteed that the Bills aren't going to score more than 2 TD's max, probably 1. That one score could be Henry or the defense, or most likely a WR. And Miami's run D probably is better than the stats indicate, so he's not going to get 100 yds.