Дело в том, что автор OpenServer подсунул
подлянку в конфиги MySQL.
Чтобы в PDO работала смена кодировки при использовании OpenServer, нужно убрать там из конфигов MySQL параметр init-connect, который по крысиному меняет кодировку на другую, никак не уведомляя об этом PDO.