It's certainly possible to implement centralized, non-proof-of-work smart contracts: publicly send the Fed's API a Lua script. Whenever the Fed changes their ledger, they run your Lua script in a sandbox with limited CPU, see if it outputs any transactions, and processes them. Anyone can run the Lua script themselves and see if the Fed was trustworthy - but if the Fed chooses not to run your script, well, that's just a centralized bank doing its centralized thing, tough luck.
If you want to not put your reliance on a centralized bank to run your script, then you've got to use a distributed consensus platform. Even if you had something Ethereum-like that the Fed simply oversaw, they could just refuse blocks they don't like (and in fact they'd essentially have to to have any meaningful control of the currency at all), so all the complexity of gas and proof-of-work isn't buying you anything.
Relatedly, and along the lines of what 'patio11 was saying: you can implement smart contracts for a centralized currency today. A startup that had its own API for opening accounts, sending it USD, and running publicly-visible Lua scripts would be a straightforward thing to build, and if that startup ran for enough time, you'd gain (centralized) trust in it doing its thing.