This can actually be automated via a smart rule script:
-- Mirror Smart Groups
-- NOTES:
-- - The smart rule should search only for all or certain smart groups (in one or all databases) and use the trigger "Before synchronization"
-- - We add only additional replicants to the mirror, it's up to the user to move all instances of undesired items to the trash
on performSmartRule(theRecords)
tell application id "DNtp"
repeat with theSmartGroup in theRecords
if (type of theSmartGroup as string) is "smart group" then
set theLocation to location of theSmartGroup & name of theSmartGroup
set theGroup to create location theLocation in (database of theSmartGroup)
-- This doesn't add multiple replicants to the same group, therefore no need to check the existence of a replicant first
-- In addition, this is the most efficient solution and avoids unnecessary changes (and up/downloads)
replicate record (children of theSmartGroup) to theGroup
end if
end repeat
end tell
end performSmartRule