Having seen these issues more than once in various Ohio courts-of-law, it boils down to:
I SAID and
HE SAID.
What a judge or jury will say is:
WHAT DID THE CONTRACT or AGREEMENT SAY?
If all you have is some kind of nebulous verbal "arrangement," who knows exactly what was supposed to be done? Then, all you've got is the old: "He said, I said" deal, which is really no deal at all. No concrete terms. What is "good" to me, may be entirely unacceptable to you.
That's why you have written contracts. If something is amiss, either side points to the paperwork and says: "This is not right because right here in the contract, we agreed to x,y, and z."
If one complains about an issue, there's gotta be some objective standard to compare sub-standard work to. I had a case up in Geauga County where a guy paid thousands for a concrete drive. It had issues--big and small. After months in court on numerous court pre-trials, briefs, motions, expert witness ($$) opinions on both sides, the judge at trial calmly said: "Slather some caulking on those parts. Award $300 to homeowner from contractor. You don't like my decision, appeal it. Next case...."
On the other hand, if you have a standard $1,000.00 driveway deal, and some guy's work crew is "in the neighborhood," and will do said job for $200 CASH, expect a crappy job from a prospective fly by night outfit.
Look, I am not trying to be a smart aleck or flame you, just what I've seen and done in driveways deals from Cuyahoga, to Richland, and up to Ashtabula County and all parts in between.
Bad driveway jobs, bad basement jobs, and bad roofs were the "trio" that paid most of my bills as a lawyer. (now ree-tired!)