There is a schematic sheet with these components:
(And only these three components)
Which is re-used, I think 8*16 = 128 times.
For a sub schematic that is used so many times the Replicate-layout script is indeed something you want to use. But these three components are probably difficult to fit in a compact space with that script. However, if you put two of these filters on the schematic, then you have an even number of components, which can be fit relatively good in a rectangle and makes use of the replicate-layout easier.
Placing one footprint, and then using the replicate layout script for the other two is also not very effective. You still have to place 128 “reference footprints”.
I think you are over-using hierarchical sheets here. I think you’re better of when you draw (copy & paste) 16 of these filters on the same sheet as the MCP23S17_SO and then use the replicate-layout script to replicate that whole sheet 8 times.