Hmmm.
Inverness is (not surprisingly) in Inverness-shire and the Black Isle is in Ross and Cromarty, the next county to the north.
Campbeltown is in Argyll, and about as far from Inverness as it is possible to get and still be in the Highlands and Islands.
Campbeltown is also an alternative (and almost forgotten) name for the village in the parish of Ardersier in Inverness-shire, but I have checked the marriage index at
www.scotlandspeople.gov.uk and Duncan McWilliam and Christin Downie were definitely married in the one in Argyll, which is over 200 miles distant. Not far by today's standards but an enormous distance in the 1750s, when the only methods of transport were by either muscle power or wind power.
Scotland's People does not have any records of children to Duncan McWilliam and Christin Downie. This does not necessarily mean that there were none, but that if there were any, their baptism records have almost certainly not survived.
I am not aware of any web site that contains many, let alone all, lists of the names of people who emigrated from Scotland in the 18th century.
I'm afraid that unless you can find some more information in Canada, it is almost certainly going to be impossible to be certain who David's parents were or when and where he was born.