It depends on whether your are using the legacy or new pass manager. ScopInfoWrapperPass suggests you are using the legacy pass manager. Not that support for it is slowly being removed.
The legacy pass manager does not directly support using passes of smaller units (E.g. a ModulePass cannot depend on a FunctionPass). However, what can be done is to run your own pass manager within your own pass. See PollyCanonicalize::runOnModule on how this can be done. Then from that pass manager, add the ScopDetectionWrapperPass pass enumerate all SCoPs in the function.
ScopInfoWrapperPass should theoretically work as well to just enumerate the SCoPs, but all other passes assume the ScopPass-based approach, and won't work with the FunctionPass-based one. Unfortunately you did not write what did not work for you.
Michael