Managing Scoped Service Lifecycles with a Singleton Factory in .NET: Best Practices? - C#