When you disable netatalk/avahi, netbios on your OS X machine discovers the server. When OS X detects two servers with the same name on both Bonjour and Netbios it will prefer the Bonjour discovered one over the Netbios one.
You can advertise both of the services via Bonjour/Avahi, however when both SMB and AFP shares are advertised only AFP will show. To overcome this you can use a different hostname for AFP and SMB.
For example, my /etc/avahi/services/smbd.service
file:
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h - Samba</name>
<service>
<type>_smb._tcp</type>
<port>445</port>
</service>
</service-group>
And my /etc/avahi/services/afpd.service
file:
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_afpovertcp._tcp</type>
<port>548</port>
</service>
</service-group>
This shows up in Finder as: