Answer:
Macbeths morality is holding him back- he has always been loyal to the king in order to gain a good afterlife (there was a very strong belief in God and the afterlife)- he was even recognised as a "valiant" solider by Duncan himself
In those times there was a strong belief that the king was divinely appointed by God, if Macbeth were to kill the king he would be sacrificing his afterlife- something he used to work hard for and by committing regicide he would also be considered Gods enemy
Macbeth also acknowledges the fact the he would be risking Heaven and will stay have to face the consequences in Earth to "We'd jump the life to come... there would still be judgement here" A1S7
-hope this helps-