Unfortunately the one thing you say you "understand" is not true. There is NO condition here that "g(f(x)) must be greater than 0". The important point is that the "x" in ln(x) must be 0. So the "3- x" in g(x)= ln(3-x) must be greater than 0. That is: 3- x> 0 and so x< 3: x must be less than 3. Now, since, in g(f(x)), x has been replaced by f(x), we know that f(x) must be less than 3. f(x)= 3- 4x- x^2< 3 or, subtracting 3 from both sides, -4x- x^2< 0 which is the same as x^2+ 4x= x(x+ 4)> 0. A product of two numbers is positive if and only if both numbers have the same side so either ((x> 0) and (x+ 4>0)) or (x< 0 and x 4< 0).
That would give two intervals on which g(f(x)) is defined but the condition that "x< c" restricts us to one of those intervals.