Unable to load SubRoutine into another Program

Correct, UR does not allow nested subprograms (directly). There are workarounds, see this thread: Merging Multiple Programs in Polyscope - #2 by eric.feldmann