Из мухи слона сделали.
Есть конкретные случаи, когда мутировать нельзя, нужно создавать новый, например если вы в редаксе будете мутировать стейт, у вас компоненты не увидят изменений, если вы детектите изменения по объекту, и надеетесь, что изменив часть его, ваш детектор сработает, тоже будет облом. Иногда бывает что вам нужен исходный объект, а вы его в процессе работы взяли и мутировали. Например, вам нужен для работы исходный массив объектов, вы фильтруете его, радуетесь тому что массив у вас новый, но забываете что объекты то в этом масиве старые, и мутируете их.
Сама по себе мутация не страшна совсем, более того, дешевле мутировать старый объект а не создавать на каждый чих новый и ждать когда старые сборщик соберет. Но как и везде в яваскрипте нужно много и продуктивно думать, нужно всегда знать чего ту мутируешь и какие будут последствия.
В реакте кстати, практически всегда мутировать нельзя