Have you tried something along the following lines:
Call a simulink function from an event action, just before the original entity enters the replicator, and set the number of replications in an attribute of the entity. Then use this attribute as the replication amount source.
I have attached a simple model where I tried to read a signal from the number of entities in a queue and set the number of replicas based on that value. I have set the 'Hold original entity until replicas depart' to true. Please find it attached.