vCard sent to my android from an iPhone arrives as text message
This seems to be a bug on the OS (src)

You have to use a third party app for this. vCardIO and bizCard Manager/SMS vCard are good solutions. Former one is preferable and it's free.