Большое спасибо за ответы, все они оказались для меня очень полезными.
Всё-таки наши филологи, которые составляют словари и учат нас культуре речи далеко не всегда внимательны к языку и точны в своих наблюдениях.
Ознакомившись с вашими материалами, еще раз перечитав т. Скворцова (автора "Культуры русской речи"), я начинаю думать, что между "войти и зайти" семантическая разница намного больше, чем стилистическая, то есть замена одного глагола другим в принципе возможна не часто.
Как мне кажется, приставка ЗА придает действию два дополнительных значения: пространственное и временное. С точки зрения пространства, зайти - это, действительно, войти и пройти дальше. С точки зрения времени, зайти можно на ограниченный временной отрезок. Если по контексту нет особой необходимости подчеркивать эти значения, то можно сказать: "Чепурный зашел (вошел) в дом и лег в темноте отдохнуть и сосредоточиться".
Но замену можно сделать не всегда: "К счастью, никто так и не зашел в дом". В этом случае нельзя сказать "вошел". И как правило, именно контекст, а не стиль определяют выбор нужного глагола.
А как насчет речевых ошибок? "Едва я зашел в дверь, которую считал коридорной, как ставня отворилась". Здесь, мне кажется, "зашел" не совсем подходит: разговорный, неточный стиль. Разрешите войти? - это правильно, вежливо. А "разрешите зайти"? Ну да, зайти, остаться, на сколько надо, и ходить, где хочется. Нет, так говорить не стоит.
Но это мои собственные рассуждения, возможно, вы не согласитесь с ними.