If I'm creating a customization, and I want to make it possible for one of my own elements to serve as the root of a file, my instinct would be to use the namespace of the element like this:
<schemaSpec ident="landscapes" start="TEI li:property" xmlns:li="http://hcmc.uvic.ca/ns/landscapes">
However, if you do that, only the TEI element will be available as the root of your document. What you must do instead is this:
<schemaSpec ident="landscapes" start="TEI property">
In other words, you have to omit all mention of the namespace. I guess that what this really means is that the @start element is expecting the @ident values of elements defined in the schema, not their QNames. You can figure this out from the SVG example, but I think it would be clearer if the definition of @start specified explicitly that what's required is the bare @ident with no namespace qualification.
I have no idea what happens if you want to have a custom element in your own namespace, but which has the same local name as an existing TEI element. That's probably a bad idea for all sorts of reasons, but it shouldn't be structurally impossible; namespaces are supposed to allow for this sort of thing.