This technically works, however, I would implement this filtering more on the hazardlib side. I would modify the SES to accept source and rupture filters, in the manner of the `hazard_curves_poissonian` calculator.

See
- https://github.com/gem/oq-hazardlib/blob/master/openquake/hazardlib/calc/hazard_curve.py#L26
- https://github.com/gem/oq-hazardlib/blob/master/openquake/hazardlib/calc/stochastic.py#L23