Skanda Purana Book 6, Chapter 239, verse 31 (translated by G. V. Tagare) states:
janmanā jāyate śūdraḥ, saṃskārāt dvija ucyate
A man is no better than a Śūdra at his birth. He is called a Brāhmaṇa (Twice-born) due to the consecration.
The above verse states that all men are born Shudra but become Brahmanas by consecration.
On the other hand, Bhagavad Gita 9.32 (translated by Srila Prabhupada) states:
O son of Prtha, those who take shelter in Me, though they be of lower birth - women, vaisyas [merchants], as well as sudras [workers]-can approach the supreme destination.
According to the above verse, even those of lower births (i.e. born in sinful wombs - papa-yonayah), enumerated as women, vaisyas and sudras, can also approach the supreme destination. This implies that brahmanas and kshatriyas are of higher birth.
Also from Chandogya Upanishad 5.10.7 (translated by Swami Lokeswarananda):
Among them, those who did good work in this world [in their past life] attain a good birth accordingly. They are born as a brāhmin, a kṣatriya, or a vaiśya. But those who did bad work in this world [in their past life] attain a bad birth accordingly, being born as a dog, a pig, or as a casteless person.
The above verse also supports higher varna by birth.
Is there a contradiction between Skanda Purana, and the other two above? How can we resolve this contradiction?