Yes you're quite right
(although it had me scratching my head for a while to work out why).
I had initial only considered the motion of the circular roller and semi-circular part of the sprocket (gum?) but, if one considers the motion of the tooth, then clearly, in the case of the roller pinion the tooth follows a straight path while a the tooth of a sprocket follows a curve (as you pointed out a cycloidal path).
That then raises the questions;
Is it possible to design a conventional sprocket that would operate as required (i.e. backlash free and accurate) on a linear chain?
How many teeth would be required to maintain correct contact at all times? And, if this meant an unfeasibly large sprocket, would having two or more smaller sprockets suitably spaced along the chain, give you the desired control?