The off field trouble is the big key for me. I'd make sure there was a clause in the contract stipulating expectations of the field and consequences for not meeting expectations. Otherwise, I think it's a good deal. He gets what he wants, which is a long term deal paying him past his prime and the Cowboys get a guy who will be one of the best in the league during that time and who will probably come down off his prime in about 6 years. That means they will still have a productive RB in year 7 and may only take a big cap hit in year 8.
My concern is I don't see Zeke making it that long as a top running back given the level of reps he is going to have to have with Dak as the QB.
His avg runs per game is pretty high for a guy to have a career as long as his contract - so either that is going to change and he and Dak both won't be as effective or he is going to wear out and then it will be more than just a single year of paying way too much for too little.
He hasn't injury problems - which is probably the only thing that makes me pause a little in my thinking. But he is a bonehead off the field sometimes and that might offset the no injury thing.
I do agree with others that the bigger mistake was Dak - you could have brought in a number of guys to run this offensive with the OL, WR and RB core that he has, but I guess the team loves him in the locker room.