Like most "functional" concepts, this one has been over-hyped.
At some point, in almost all programs that are useful in a business context, something must mutate. Doing so in a correct and disciplined way is part of the art of programming.
In terms of benefits, you identify the obvious case of concurrent access to a shared object. What's not clear is why the shared object is being mutated at all, if it isn't necessary to do so. Most programmers instruct mutations on purpose because the mutations perform a necessary function, not by a slip of the keyboard.
If it is necessary to mutate, then making everything immutable is no solution to the problem. It just pushes the problem around to another area of the program, where eventually something (perhaps even, a lot of things) must in fact mutate.
And whatever was to be gained by immutability, will perhaps be lost again by unintentionally holding expired data, which is the mirror image of unintentionally updating shared data.
If there is any grain of truth about immutability, it is probably this. Mutations to "master data" (and exactly what that is may differ from program to program, but it is typically the part which is stored indefinitely) should be planned out, retaining all intermediary values until the completion of the operation (i.e. don't reuse variables and objects for multiple steps of a calculation), and then the final changes to the master data should be applied "at once" (i.e. in a relatively localised area of the program).
This contrasts to "worker-bee" type approaches where there are many subroutines (perhaps on multiple threads) applying many incremental changes all over the master data, and which have often already thrown away intermediate values for one change before they have have even decided/calculated what the next change will be.
The widespread use of immutable objects, where any necessary mutations of shared data must always be pushed to a relatively high level in the program/call stack, make this worker bee approach prohibitively difficult from the outset. Other things can still go wrong, but it helps that problem at least.