While I do think that it was mainly because they didn't know Tennant would be leaving so soon, the matter is not without a number of possible reconciliations:
1) It could be that the events of "The End of Time" and the whole "returning Time War" business mucked up the timeline a little and resulted in Ten regenerating earlier than he should have. As we saw, the oncoming re-emergence of the War did cause some significant temporal anomalies such as "bad dreams" about the Master bleeding through into everyone in the universe's minds as well as the rapid development of the Ood race. However, this would retroactively alter the events of "Silence in the Library" (albeit to a very small degree) because River would likely not ask about about the Crash of the Byzantium. However, while his explanation provides an in-story "out" for the contradiction, it is rather pointless from an out-of-universe perspective as it simply ignores the contradiction as opposed to justifying it.
2) She assumed that Ten was a future Doctor (Twelve, Fourteen, etc.). Since she never meets the Doctor in the right order, it is very possible that she could have met some from far into the future (the 37th Doctor, perhaps, although that seems a bit of a stretch) and thus, Ten could still be considered "early days" for her, as the first Doctor that she met was Eleven, and thus, he would be the "earliest." I kind of prefer this explanation, as we know that the crash of the Byzantium occurred in Eleven's lifetime and the picnic at Asgard seems like something that Eleven and her would have done, considering how close they were. However, it is probable that she has met Ten more than once, as Eleven is already accustomed to meeting her in the wrong order in "The Time of Angels". From Ten's perspective, any subsequent encounters with a younger River than the one seen in "Silence in the Library" would likely have occurred when he was avoiding his oncoming regeneration, which he did in between "The Waters of Mars" and "The End of Time" (and, since this wasn't long after he lost Donna, it could have been when he told River about her, as the River in "Silence in the Library" was aware of who Donna was and seemed to know about what would happen to her). This doesn't really cause any major problems for this explanation (in fact, it helps to explain her "younger than I've ever seen you" comment, as Ten would have been older by this point), but it does seem odd that she would mention smaller events like the crash of the Byzantium and the picnic at Asgard when, if she did indeed mistake Ten for a later-but-still-early incarnation, they would have shared much "bigger" events together like rebooting the universe. (Although Eleven was still fairly "early" when that happened, so even now it should seem odd that she didn't bring it up.) Still, this seems to be the most likely rationalization given what we know.
3) She recognized Ten as "the Doctor," but not as any particular incarnation due to her "Time Lord sense." I'm not very fond of this explanation, as it presents some questions such as why, if she could sense who he was, could he not tell who she was? The "Time Lord sense" should technically work both ways. Plus, she obviously did recognize him (primarily because she had pictures of all of his incarnations, but it helps to assume that she mad met Ten before when he was later in his life, which does seem to be evidenced by Eleven's familiarity with their anachronistic relationship), so even if she recognized him because of her "Time Lord sense," she probably would have followed the exact same process (that is, asking him about events in her diary) and would have gotten the same problematic result as the one with which we are currently dealing (which is "why did she ask Ten about the crash of the Byzantium if she experienced it with Eleven?").