Using a court of appeals assumes a shared widespread understanding of the topic of disagreement, often the only people with the expertise on the topic are going to be the parties involved and teaching a 3rd party can be impractical and prone to steering.
I can see smart contracts working with very low volume specialized scenarios for this reason.
Also traditional dispute resolution is expensive plenty of times where both parties would be willing to accept the risk of a bug over paying lawyer fees
The shape of trials in a court of law is built around discovering the topic of disagreement and sourcing enough expertise on the topic to get a judgement from a jury of "peers".
Whether or not that is an expensive process is orthogonal to the question: if a "smart" contract makes a mistake, how do you fix it? Right now there is just zero recourse and everybody shrugs their shoulders at it, "oh well, that's just how software bugs work, sorry about your loss". That's an awfully hard pill to swallow for the average person. Real contracts built up a lot of mechanisms to keep contracts fair and equitable by making sure that when one goes wrong there are ways to deal with it.
Right now with "smart" contracts it's a wild west of whether or not escrow accounts exist and you can maybe, optionally get people (or institutions) involved to fixed something about to go wrong or in the process of going wrong, and there's just about no way in most "smart" contracts to fix things after they've gone wrong. But critically it's a "right" in most contract law-based countries to challenge a contract in a court of law and get a human opinion from a jury of your peers, and I don't see how average citizens can trust a system where that "right" is not given as such and is an "optional" feature that they generally have no idea exists in a specific "smart" contract code (much less if that feature itself is buggy or not).
I realize (per above) that this is often a "feature" and not a "bug" in "smart" contract design today. Most of the designers don't trust institutions (and maybe not even people) and like the "freedom" of "smart" contract platforms with few regulations, few "required features", and few places for instutional/personal intercession. I just don't think that's a good situation for most people to ever trust "smart" contracts in the real world.
I can see smart contracts working with very low volume specialized scenarios for this reason.
Also traditional dispute resolution is expensive plenty of times where both parties would be willing to accept the risk of a bug over paying lawyer fees