I have an implementation of something similar to zap splits here: https://supertestnet.github.io/nwc_prisms/
You can peep the code easily as it is all in that html file. I don't know how amethyst does it, but how I do it is, I collect all the lightning addresses of the recipients, make one invoice which the zapper pays, and then my software "manually" (technicality, it's automatic now, because it's software) pays a percentage to each of the lightning addresses in the list. It's not atomic, and I don't think Amethyst's implementation is atomic either. But it seems to work well enough.