I have also used (Beginning)
VB.NET 2nd Edition (Chapter 18) to create my own form that saves a collection to an XML file.
The only problem I struck was not following the instruction that reads "Before running the project, it's very important that you delete the existing xml file...".
If you previously ran the project with a "single entry" before developing the collection, the xmlserializer will attempt to load the collection from the "single entry" xml file.
I hope that makes sense.