É, se os usuários pertencem a mais de um grupo, não tem o que fazer --- só mesmo usando um compartilhamento por grupo, e forçando o grupo certo em cada um deles.
O problema aí é que os arquivos são armazenados no Linux, e portanto seguem as regras do Linux para acesso, não do Samba. Assim, quando o arquivo ou pasta são criados, eles ganham acesso conforme o UID/GID do usuário, sem levar em conta grupos secundários, a menos que seja definido manualmente.
Se você me garante que os arquivos estão organizados em pastas, podemos tentar usar o bit de SETGID na pasta mais alta, assim os arquivos criados dentro dela vão ganhar acesso automático para o mesmo grupo da pasta; mas não sei se é possível fazer isso de forma automática com mais de um grupo.
Seria mais ou menos assim:
cd /caminho/da/pasta
chgrp -R grupo1 pastaDoGrupo1
chmod -R g+s pastaDoGrupo1
chmod -R g+rw pastaDoGrupo1
find pastaDoGrupo1 -type d -exec chmod g+x \{\} \;
chgrp -R grupo2 pastaDoGrupo2
chmod -R g+s pastaDoGrupo2
chmod -R g+rw pastaDoGrupo2
find pastaDoGrupo2 -type d -exec chmod g+x \{\} \;
...