А почему, собственно, мы имеем право подставлять вместо числа матрицу?
Формально -- имеем, только надо правильно интерпретировать то, что получится. В выражении

получится вовсе не

, а нечто экзотическое. Там будет (если мы хотим, чтобы это действительно совпадало с

) блочная матрица, у которой на диагонали стоят блоки

, а вне диагонали -- блоки

. И вот для блоков этой матрицы мы пишем комбинацию матричных умножений и сложений, формально соответствующую правилу вычисления определителя. Ну написать-то можем, да; только вот ниоткуда заранее не следует, что в результате получится почему-то нулевая матрица.
Действия не коммутативны...
Нет, до коммутативности или некоммутативности тут дело доже не доходит. Как метко заметил
caxap, равенство

не то что даже неверно, а попросту бессмысленно.