Stasera è la fiera dei "non funziona" senza spiegazione, sei il terzo...

"non funziona" senza ulteriori spiegazioni non vuol dire niente.
Ti da errore? Cosa dice? Non fa ciò che ti aspetteresti? Cosa fa di strano? Sembra che abbia inviato l'email, ma non arrivano? Hai verificato tra lo spam? Hai provato ad inviare l'email ad un altro indirizzo (ad un diverso provider ovviamente, se lo mando allo stesso non serve a niente)?

P.S.: a che serve farti una tua classe se ne esistono già divrese più che complete (tipo PHPMailer)? A meno che tu non lo stia facendo a fini didattici non ha senso.