Oi Fernando, tudo bem? Na verdade funciona sim, mas deixa eu te explicar o que tá acontecendo.
A cada segundo o setInterval executa sua função, certo? Mas olha lá, primeiro a variável troca entra como true, ai ele desenha a bandeira do Brasil e você muda ela pra false, logo abaixo você verifica que ela é false e desenha a bandeira da Alemanha e muda ela pra true novamente.
Isso quer dizer que, sim, as duas bandeiras são desenhadas, mas você não consegue ver a bandeira do Brasil por que a da Alemanha é desenhada por cima muito rápido.
Solução? Ao invés de fazer dois ifs, faz um if e um else, que assim a bandeira só será desenhada uma vez a cada segundo. Primeiro desenha a do Brasil, espera um segundo e desenha a da Alemanha. Pegou a ideia?
if(troca==true){
desenhaBandeiraBrasil();
troca=false;
console.log('aiks');
}else{
desenhaBandeiraAlemanha();
troca=true;
console.log('wow');
}