Worth adding perhaps that Bitcoin is intentionally not Turing complete, as the complexity opens up a very big space for vulnerabilities. And indeed, we see a lot of those in ethereum contacts.
The DAO failed because of a lack of strong typing in the contract language, not because of Turing completeness.
The main problem with a Turing-complete contract language is that it becomes impossible to statically verify runtime properties, so a node can't know how long it will take to verify a transaction it receives. This opens up for denial-of-service attacks, e.g. embedding a transaction with an infinite loop in a block in the blockchain.
That's true theoretically and your argument still stands for a lot of cases.
However for practical purposes nodes only compute up to a certain amount of instructions. This is known as the "gas limit". Additionally it costs Ether to get them to run code so any DOS approached in this way is prohibitively expensive.
Yup. Why people would want turing complete contracts is completely beyond me. There is a reason why we use heavily restricted computational systems for high integrity systems. Until somebody is doing some sort of model checking on my smart contract you can count me out.