I don't really have a fixed opinion :) - I can happily go along with your approach as well.
E. g. both arguments somewhat hold:
- it doesn't make sense to show an object in a "random" language.
- the category tree needs to be translated completely and a "out-of-bound" category item may lead to users asking for a complete translation. It may be good that people perceive a page to be erroneous or lacking information. Or they may just make sense of the "out-of-band" language.
How do you intend to pick the fallback if there's neither a user-default nor a system-default langauge? Will it just be the random first item of some list?