Inverse functions are tricky. The inverse function of a function that is one-to-one can cause problems. You'll want to be careful about that.
In general, to verify the solution, plug it back into the differential equation and see if it comes back with "True" :
solution = {{n[t] ->
InverseFunction[
Log[#1]/k^2 - Log[-k + #1]/k^2 - 1/(k #1) &][(r t)/k + C[1]]}};
diffEquation = HoldForm[D[n[t], t] == n[t]^2 (1 - n[t]/k) r]
ReleaseHold[diffEquation /. First[solution]]
I've used HoldForm to make sure that the subsitution worked. Without it, Mathematica might try to simplify D[n[t], t] to n'[t] which doesn't match the pattern. ReleaseHold is used after n[t] has been properly substituted with the proposed solution. The result of this is an enormous complicated equality. Fortunately, FullSimplify can handle it:
FullSimplify@%
True