Dare has a very good perspective on all things XML. In this recent post he points out that Contract-First design is not without its pitfalls, stemming from the "impedance mismatch" between XML and Objects. Who can disagree? But there are good mitigation strategies, to avoid the pitfalls. For example, follow the guidelines for designing interoperable XML Schema. If I had to sum it up succintly, it would be:
If you already have a complex XML schema and want to design a service around it, rely on adapters or bridges to connect.
Stay practical and you'll make progress. Yes, we need to do more to help shrink the pitfalls, but even today you can get things done.