Canon law on the subject:
Can. 1108 §1 Only those marriages are valid which are contracted in the presence of the local Ordinary or parish priest or of the priest or deacon delegated by either of them, who, in the presence of two witnesses, assists, in accordance however with the rules set out in the following canons, and without prejudice to the exceptions mentioned in canon 144, 1112 §1, 1116 and 1127 §2¬3.
Note that there is NO mention that the witnesses must be Catholic. Our daughter was just married by a very orthodox priest, in our Cathedral, with a non-Catholic best man.
Priests shouldn’t be making arbitrary rules that aren’t supported by Canon law.