Achei a resolução em um blog na internet, mas n entendi mt bem o motivo de ter funcionado, o certo nao seria mandar o canvas começar o quadro vermelho 100 pixels depois (exatamente ate o ponto no qual o preto foi) e depois mandar ele andar mais 100 pixels pra baixo? O código resolvido sem o bug, e que a qual estou tentando entender o motivo de ele ter funcionado esta abaixo, e o com o erro é o meu acima
era o height, tinha trocado o h com o t