Contracts can be unenforceable for reasons that might not be obvious to people who don't do contract law, as well. For example, the concept of consideration is not especially obvious, that contracts are often not enforceable if both parties do not receive consideration, which leads to things like peppercorn payments. I know about that as a layman but a contract attorney would know of many more non-obvious things that must be checked out to avoid having problems actually enforcing the contract. It seems like it would be very, very easy to produce a smart contract which a court would later determine was not enforceable in the first place, and perhaps order reversal of payments or other things.
For one, as a general concept the parties to the contract need to actually understand the terms and courts will somewhat regularly throw a contract out if they think there were implications that were not apparent to one of the parties. Smart contracts seem like absolute minefields for this kind of problem.