That's correct with all the accuracy needed for technological purposes and with reasonable assumptions.
One could argue that some impurities are not fully activated at room temperature. That would be deep level dopants. Normal people don't expect that in such a question.
In some semiconductors, dopants can give or catch two electrons. However, I don't remember any for silicon. Where such dopants exist, the second level is not shallow, and is not activated at room temperature, as far as I know and remember.
Also, some dopants can be added to "compensate" a semiconductor. This is common for GaAs, but I haven't seen it done for Si. It works like a "buffer solution" for chemists: significant doping with an element that introduces a level deep in the forbidden band stabilized the Fermi level at this deep level. You would need the donor doping to exceed the acceptor doping and to saturate the deep level before an N semiconductor appears. However, compensation isn't done at 1016cm-3, normally not in silicon, and this must not be expected in this question.