The <() form is *not* command substitution; it is *process substitution*, and it does something undesired for your example. It passes the name of a named pipe as an argument to the rm program. Example:
ends up as something similar to:
certainly not the desired result (unless you want to delete the named pipe /dev/fd/62 as well)!
To be more clear
rm a b <(yes) != yes | rm a b