I always use XML schemas (validation readers) to make XML deserialization much easier and more stable. It also allows better error reporting to the user. XML schema is also very useful for unit testing to make sure that serialized documents are correct.
On the other hand, it would be good to ship XML schema in a separate assembly, so people that don't use XML Schema get the extra overhead. This might require some extra refactoring.