На практике, для проблемы 1 разработчики вряд ли будут повторно использовать строку без проверки ее содержимого, и если бы они это сделали, они, вероятно, заметили бы заполнитель при запуске своего кода (или QA). Так что это маловероятно и не станет концом света.
Для выпуска 2 вы можете использовать «Найти использование» в Visual Studio для автоматически сгенерированного свойства, которое он создает для ресурса, чтобы найти каждое место, где он используется, и убедиться, что правильное количество (и порядок) параметров присутствует везде это используется. Но, вообще говоря, в любом случае строки ресурсов не так часто используются повторно (на самом деле не рекомендуется повторно использовать локализуемый текст в разных контекстах, поскольку переводы могут нуждаться в изменении в разных контекстах, например, из-за лингвистических правил или ограничений пространства).
Еще один риск, который я вижу, заключается в том, что переводчик может опустить или испортить заполнители, которые будет сложнее обнаружить. Но это был бы только один пример ошибки локализации ... Есть множество других вещей, которые могут пойти не так при локализации приложения, и часто нет надежного способа защититься от них.