Tentando resolver o exercício, percebi que se eu optar por fazer um cursor pegando tanto o ID quanto o VALOR_TOTAL, obtenho um resultado final diferente, 8.
CURSOR cur_VENDA is SELECT ID, VALOR_TOTAL FROM PRODUTO_VENDA_EXERCICIO;
Mas fazendo um cursor só do ID e posteriormente obter o VALOR_TOTAL com outro SELECT, obtenho o resultado final correto, 6.
CURSOR cur_VENDA IS SELECT ID FROM PRODUTO_VENDA_EXERCICIO;
Vi também que no cursor apenas do ID, o loop do cursor segue a ordem numérica dos IDs, enquanto que no loop tanto do cursor quanto do VALOR_TOTAL, é seguida a ordem da tabela.
Mais cedo nas aulas foi dito que o cursos segue a ordem da tabela, então seria bom que na aula seja mencionado esse detalhe.