с одной стороны я понимаю, что конфигурировать контейнер в контроллере не лучшее занятие, но с другой, зачем использовать контейнеры, если ради такой простой подмены, придётся прокидывать всю зависимость вглубь с самого верха.
Т.е. моё решение оно рабочее, вопрос только к дизайну