Thanks - that does seem to work, but it doesn’t seem entirely correct to me.
Digging a bit deeper, I note that pages such as /login have the value 0 in the Pages table for siteTreeID and cParentID, so I thought I’d try setting the /cart page to the same (original values are 1). Lo and behold the cart page no longer appears in the site map unless you view system pages, but more importantly it now works on every site.