If you use DebugDraw3D in SubViewports, then you need to use DebugDraw3DScopeConfig.set_viewport to explicitly specify the viewport in which debug information will be drawn.
This will allow the add-on to find the correct camera that will be used for frustum culling.
If you are using SubViewport to render the entire scene, you can use DebugDraw3D.scoped_config so that you don't have to specify it every time.
Just call this function once right after loading your viewport:
DebugDraw3DScopeConfig.set_viewport also takes into account the own_world_3d parameter of the SubViewport, so that debug information will be drawn in the selected world.
If you are using split screen or somehow viewing the same location through multiple Viewports, then you should disable frustum culling to avoid issues with disappearing objects.
To do this, use DebugDraw3DConfig.set_frustum_culling_mode:
This is how DD3DDemoSubViewport.tscn looks with frustum_culling_mode enabled (FRUSTUM_PRECISE) and disabled (FRUSTUM_DISABLED).