Since 2007 I use "Peer DNS" on PPPoE Client.
Never happened that problem.
Sample from RouterOS 6.7 on my real gateway (except gateway IP = 1.1.1.1):
ros code
/ip dns
set allow-remote-requests=yes cache-max-ttl=1h cache-size=4096KiB servers=8.8.8.8
/ip pool
add name="pool Le Forane" ranges=100.100.16.0/24
/ppp aaa
set interim-update=5m use-radius=yes
/ppp profile
add address-list=auto_lista_ip_pppoe change-tcp-mss=yes dns-server=1.1.1.1 local-address="pool Le Forane" name="profilo Le Forane" use-encryption=yes
/interface pppoe-server server
add authentication=mschap2 default-profile="profilo Le Forane" disabled=no interface="EoIP Le Forane E" keepalive-timeout=30 mrru=1614 one-session-per-host=yes service-name="pppoe Le Forane E"
and on CPE (except username/password obviously):
ros code
/ip dns
set allow-remote-requests=yes cache-max-ttl=1d cache-size=2048KiB max-udp-packet-size=4096
/interface pppoe-client
add add-default-route=yes allow=pap,chap,mschap1,mschap2 dial-on-demand=no disabled=no interface=wlan1 max-mru=1480 max-mtu=1480 mrru=1614 name=pppoe-client password=password profile=default-encryption use-peer-dns=yes user=username
Peer-DNS == Dynamic DNS...
I'm using the same settings. However DNS servers are randomly lost by the CPE device, or are not obtained at all upon initial connection.
It's very random, but becoming more prevalent as we deploy the newer ROS versions.