Я не совсем уверен, правильно ли я понимаю ваш вопрос. Почему это было бы предпочтительнее, если контроллер представления выдвинул себя к контроллеру навигации? Я имею в виду, вы должны в любом случае создавать экземпляр своего контроллера представления в коде (делегат приложения или другой контроллер представления). Почему вы не можете просто создать там навигационный контроллер, создать экземпляр своего VC и затем вставить его в навигационный контроллер? Насколько я вижу, это не требует создания каких-либо дополнительных контроллеров представления.
В любом случае, иметь контроллер представления, который сам решает, где он будет использоваться (т.е. помещается на него), - не лучшая практика Таким образом, вы теряете гибкость использования его в других контекстах. Всегда старайтесь соединять компоненты как можно более свободно.