People have different definitions for "working". I assume that the people who claim that Matrix doesn't work are the ones comparing to alternative commercial solutions and all the polish that usually accompanies those.
A decade ago Moxie Marlinspike argued[1] that to develop Signal more quickly, he and his team could not be distracted by federation. At the time I wasn't sure what to think, but it does seem that the effort level of using the integrated approach of client/server/protocol may just logistically be easier.