Saxon accepts this as a valid restriction, but with a warning:
Warning: on line 20 of test.xsd:
There is no global element declaration named {customize}, so the strict wildcard in the
base type can never be satisfied
Warning: on line 23 of test.xsd:
There is no global element declaration named {positions}, so the strict wildcard in the
base type can never be satisfied
Remember that xs:any defaults to processContents="strict", meaning that the only elements that can appear here are elements that have a global declaration in the schema. And since "customise" and "positions" don't have global declarations, they don't satisfy this condition. I would have to do some research to work out why Saxon puts this out as a warning rather than an error. Whatever schema processor you are using, it has taken a different interpretation. Mind you, Saxon tests subsumption the XSD 1.1 way, even if XSD 1.1 is not enabled, because there are bugs in the XSD 1.0 spec in this area: but some processors have chosen to be strictly conformant, and implement it bugs and all.
I would recommend making "customise" and "positions" into global element declarations.