In Dynatrace services are server side code executed in a process group so by definition it makes sense to me that in order to merge services they would need to be part of the same process group. I don't have a ton of experience in this area yet so that is just my thought.
James is correct - mergeable services must be apart of the same process group. This is to make sure that you are merging server side code that originates and lives in the same area on like hosts.
If this is necessary, though, this could be accomplished by setting up process group detection rules to merge the process groups together first. Here is a snippet from the Dynatrace documentation that explains in better detail:
"Dynatrace doesn't merge services that are hosted across multiple process groups, because each process group is considered to be a logical cluster. When Dynatrace detects the "same" service in separate process groups, it treats them as separate services (e.g., one process might be used in staging and the other in production). However, if you instruct Dynatrace to merge two separate process groups into a single group, this will also result in the services on those processes being merged as well."
Hope this helps!