Basicamente el fallo está que tradujeron "virgen" en el idioma de la época como lo que significa "virgen" ahora, cuando en aquella época esa palabra significaba joven/doncella, es decir, menor.
María no fue virgen, simplemente el cristianismo se basa en un fallo de traducción, y no es el único.