Oi, Apollo! Tudo bem?
A sua atividade refatorando uma função ficou bem encaminhada ao criar a classe Sobremesa herdando de ItemCardapio, o que reforça o uso de herança, polimorfismo e reaproveitamento de código na Orientação a Objetos em Python.
A estrutura está clara: você usa super().__init__(nome, preco) para aproveitar os atributos da classe base e define dados próprios da sobremesa, como tipo, tamanho e descricao. Uma dica é manter o padrão de encapsulamento usado na classe ItemCardapio; se nome e preco estão como _nome e _preco, pode fazer sentido usar _tipo, _tamanho e _descricao também, além de avaliar se o método __str__ poderia retornar algo mais descritivo, como nome, tipo e tamanho, para facilitar a visualização do objeto no sistema.
Você pretende criar outras classes, como Bebida ou PratoPrincipal, usando essa mesma estrutura de herança?
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!