O código parece estar correto, não há erros quando abro no console do navegador. Mas não consigo fazer a função desenhaTexto(); funcionar, ou seja, exibir o texto. Segue o código:
<canvas width = '600' height = '400'></canvas>
<script>
var tela = document.querySelector('canvas');
var pincel = tela.getContext('2d');
pincel.fillStyle = 'lightgray';
pincel.fillRect(0, 0, 600, 400,);
function desenhaTexto(texto, x , y) {
pincel.font='20px Georgia';
pincel.fillStyle='black';
pincel.fillText(texto, x, y);
}
desenhaTexto("Qual é a fração?", 50, 30);
function desenhaQuadrado(x, y, tamanho, cor ){
pincel.fillStyle = cor;
pincel.fillRect(x, y, tamanho, tamanho,);
pincel.fillStroke = 'black';
pincel.strokeRect (x, y, tamanho, tamanho)
}
for (var x = 0; x < 150; x = x + 50){
desenhaQuadrado(x, 0, 50, 'green');
desenhaQuadrado(x, 0, 50, 'green');
desenhaQuadrado(x, 0, 50, 'green');
}
desenhaQuadrado(x, 0, 50, 'white');
</script>