Anyway, as far as I know in the moment all nodes run the same software, because except of bitconj there is only one implementation. So why should some of peers relay the transaction while others do not when they are all running the same software and following the same rules?
People are free to choose their own rules for relaying and including transactions and do in fact do so.