Your opening paragraph should probably note how Shakespeare was not attempting an historical play in Macbeth. While Holinshead's Chronicles form the basis for much of his information, Shalespeare took that information and changed and shaped it to help make a dramatic story. In that way, it is much like Arthur Miller's The Crucible, which takes some historical information about the Salem Witch Trials and then adds details and even changes some characters to make the drama effective. (Walt Disney Studios did much the same thing with some of their most famous cartoon adaptations such as Beauty and the Beast or The Little Mermaid.)
Shakespeare was also keenly aware of his audience. King James I of Engliand (who was also James VI of Scotland) was interested in witches. James I was also a descendent of Banquo's. Both of these ideas are brought into the plays as well.