Play Ndefs into orbits

I am trying to play an Ndef into a dirt orbit, the same code works if I use a SynthDef... code below shows the problem.

( // play something on orbit 0, this is the same as:    d1 $ s "bd"
Pdef(\x,
	Pbind(
		\type, \dirt,
		\s, \bd,
		\dur, 0.5,
		\orbit, 0
)
).play
)
	
( // this works
SynthDef(\inject, { |orbit=0|
	var sig = CombC.ar(Impulse.ar([10,30]) * 0.1, delaytime: 0.1, decaytime:4);
	Out.ar( ~dirt.orbits[0].dryBus, sig);
} ).play; )

( // this doesn't work
Ndef(\inject, { |orbit=0|
	var sig = CombC.ar(Impulse.ar([10,30]) * 0.1, delaytime: 0.1, decaytime:4);
	Out.ar( ~dirt.orbits[0].dryBus, sig);
} ).play; )