Olá, Victor, como vai?
O seu código cumpre o objetivo proposto e utiliza corretamente os métodos da classe Set no Dart para identificar a diferença entre as coleções. O uso do método difference é a forma mais eficiente de realizar essa comparação entre conjuntos, e a lógica de passar o estoque como o conjunto principal para subtrair o que foi vendido está correta.
Uma possibilidade para tornar o código ainda mais limpo é utilizar a Arrow Function caso a função execute apenas uma instrução. Além disso, você pode utilizar o método join para formatar a saída do Set de uma maneira mais amigável no console.
Parabéns por concluir o exercício e por compartilhar sua resolução. Qualquer dúvida, o fórum está à disposição.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!