Leaving this for reference. Someone solved the question on stackoverflow with a simple one liner (https://stackoverflow.com/questions/57466547/backward-algorithm-hidden-markov-model-0th-index-termination-step-yields-wron/57482129#57482129 17)
backward[:, 0] = pi * obs_prob * backward[:, 1]

I had the wrong matrix shape, in the termination step part of the code (the last line in the method). Cheers!