I think I figured this one out. Apparently programs launched by dbus don’t by default see the wayland session. I was able to fix that by running:
dbus-update-activation-environment WAYLAND_DISPLAY
After that, dunst (and other notification daemons I tried, like fnott and mako) started working as expected.