It is very possible that you are off a tooth. After installing the belt, did you rotate the engine by hand a couple of revolutions to check the marks? Sometimes it is possible to inadvertently end up with slack between two pulleys.
I once had a belt that would always be off at least a tooth after rotating by hand, even though the marks were correct. After three failed attempts, I rotated the crank pulley so it was off a tooth, then installed the belt. This time the timing was correct after rotating the engine by hand.
I once had a belt that would always be off at least a tooth after rotating by hand, even though the marks were correct. After three failed attempts, I rotated the crank pulley so it was off a tooth, then installed the belt. This time the timing was correct after rotating the engine by hand.