So far as I can tell, the Church cares only that a Catholic marriage have two witnesses. Canon law doesn’t forbid parents from serving as official witnesses to their child’s marriage.
The Church doesn’t care who serves as “best man” because such roles in a wedding party are purely social custom. It is also custom at Catholic weddings that the best man and maid (or matron) of honor serve as the official witnesses, but that isn’t required. It used to be that the two official witnesses to a Catholic marriage had to be Catholic (which is why you would hear that the best man and maid of honor at a Catholic wedding had to be Catholic), but that is no longer required (although it might be prudent).