You missed out
James, baptised 24 May 1803
Robert, baptised 17 October 1808
Alexander, baptised July 1814
William, baptised 26 May 1822
And there is a David, parents David Weir and Margaret, no surname given, baptised on 1 July 1812 in New Cumnock, whom you should perhaps investigate?
The family were at Waterhead, New Cumnock, in 1841: David, 60; Margaret, 60; Jane, 25; William, 20; Ann, 15; and a 3-year-old Robert and 5 servants including a 10-year-old Jane Weir. All born in Ayrshire.
I think James and Alexander may both have been still farming in Ayrshire in 1851.
So assuming that David's and Margaret's ages in the 1841 census are accurate, they were born between 8 June 1776 and 7 June 1781.
**IF** they followed the naming tradition, you would expect David's parents to be James and Jane, and Margaret's to be John and Mary. However they didn't name their third son David, so they may not have been following it.