I think Johnny Depp might be a good Macbeth. He seems to impress me every time he performs. You need depth and intelligence to play this role, especially in the case of a film but also on stage. I don't personally know if Depp has performed on stage.
What a great question! I have done the same project with my own students when reading Macbeth.
After seeing Patrick Stewart play Macbeth, I could not see anyone else play the role.
As for the witches, given that Hocus Pocus is one of my favorite "witch" movies, I think that Bette Midler, Sarah Jessica Parker, and Kathy Najimy would make great witches.
I think I might cast Meryl Streep as Lady Macbeth, simply because she seems to be able to inhabit any role she undertakes. Her new movie about Margaret Thatcher, for instance, is getting mixed reviews, but there is almost universal praise for Streep's performance. In fact, there is almost always universal praise for any performance by Streep. If he were younger, I might cast Antony Hopkins as Macbeth.