Which services even still accept zero confirmation transactions?
I know Bitpay used to have a zero confirmation transaction system. They do a risk analysis of your transaction and would require the user to wait if it's too high for the merchant. IIRC, some POS system does this also.
Is their software "smart" enough to look back and see an RBF enabled transaction somewhere in a chain of unconfirmed transactions?
Actually, I find that most of them do not accept transactions with an unconfirmed parent; the risk is too high, RBF enabled or not.
To be fair, even if all the transactions in the chain are not RBF enabled, it is still unsafe to accept them due to transaction malleability - the hash of a parent transaction could be changed after being broadcast but before being mined, rendering all subsequent transactions invalid.
As long as the propagation of a non-RBF transaction is good, then I don't see a huge risk of it encountering this scenario. If it's well propagated, most of the nodes won't accept it anyways, rendering the attack useless. BIP66 helped to fixed this issue largely but I'm not sure how easy is it to execute such an attack right now.
Segwit does help with this attack significantly and that is a point to consider.