I didn't find an answer to my question, but I found a solution to my problem:
VirtualSnapshotPoint Get_point(ITextCaret caret)
{
caret.ContainingTextViewLine.GetInsertionBufferPositionFromXCoordinate(...);
}
That method made it unnecessary for me to work with the logical pixel width of any character.