This is all only a possibility, but using some logic and likelihoods based on dates and ages, it might be possible to come to a conclusion.
Archibald's first wife died in 1607 and he married Anne Cornwallis in 1609. From the 1635 will it is clear that there is at least one daughter named Mary and she is probably unmarried, since there is no indication of any husband's name.
Let's also take it as true that there were two daughters named Mary, one from the first marriage and the other from the second.
The first Mary must have been born before 1607, while the other definitely after 1609. While marriages took place when couples were as young as 12 and 14, at this date, I think that this is no longer the norm. Archibald was 32 when his first wife died, so maybe married by 20 or so. If this is then applied to his children, then the first Mary (daughter of Anne Douglas) is the one who married Robert Montgomery and the second is the one who married James Rollo.
James Rollo was first married in 1628 and his wife Dorothea did not die until 1638. If the Mary Campbell that he married were the older Mary and this was her first/only marriage, she would have been a very elderly first-time mother when she gave birth to Montgomery's children.
Not proof, but a reasonable conclusion to come to.
Nell