I finally found a solution although not elegant. I create a new service with a layer and ensured the definition query for the layer was 1=2. This ensures the layer was always blank. I then published the service and ensured a cache was created only at the highest cache level only. This provided me the cache I needed without the huge footprint on disk. I now use this as may first layer in all maps where an ArcGISDynamicMapServiceLayer was the first layer. I now see these services wrap around correctly.