Premessa: non conosco ne Vodafone ne il servizio SMS ...
Non è che il problema sta nella protezione che Vodafone ha messo per l'utilizzo del servizio?
Dici che bisogna spedire dall'indirizzo con cui ti sei registrato a vodafone.it, dunque penso che il tuo script non funziona perché il PHP il mail lo manda correttamente, poi però il tuo mail è rifiutato o ignorato da vodafone perché non riconosce il tuo script come uno speditore valido.
Qui da me (Svizzera) ci sono dei servizi che sono disponibili usando un indirizzo email ben preciso (e dunque si può pensare che facendo credere tramite script che il mittente sia questo indirizzo email tutto funziona), ma funziona realmente solo se si è connessi a internet tramite un provider specifico (quello che fornisce l'indirizzo email).