Aquinas defines heretics as “men who, having professed the faith of Christ, corrupt its dogmas”.
A “material heretic” is a Catholic who practices an opinion that is contradictory to the Church; however, that individual may not be aware fully that the act is contradictory to the Church’s teachings.
A “cafeteria Catholic” is someone who professes the Catholic faith, yet dissents from certain teachings of the faith.
In my opinion, it would be difficult for a Catholic to know that contraception and homosexual unions are not in accordance with the Church. If a Catholic practices contraception and knows that contraception is opposed by the Church, s/he is a “cafeteria Catholic”.
A “material heretic” and a “cafeteria Catholic” are different because the “material heretic” may not have full culpability or be aware of their dissent. Note a “material heretic” is not the same as a “formal heretic”.