You could try disconnecting the pipes and run the engine and check that plenty of coolant is flowing through. Catch it in a container to re-use it. In other words you are checking the water pump is pumping it through properly.
Then you could flush, and back flush the matrix with a hose pipe.
Other thing to check might be that the heater valve is actually working. When you push the lever over to 'hot' it is supposed to open the flow, and they have been known to go, Axel Gerstl sell replacements.
When you reconnect the matrix remember to bleed the heater because air locks can be a problem.