Can't boolean difference two SubD forms

Hi I’m trying to boolean difference a SubD form and it’s failing. I tried turning it into closed solid polysurface with ToNurbs and it also failed. I’m not sure why it doesn’t work. The error says that objects do not intersect. test object.3dm (660.6 KB)

if you want to make a shell, there needs to be a conection between the outer surface and the inner surface.

I see, thanks!