You technical description is not true.
First of all, the guest OS does not run in ring 0. Therefore it can not change the cr3 register to modify the MMU data.
Second. Segmentation is a BAD thing. We don't have flat memory because of "a desire to suport [sic] RISC", but because it's the right thing to do. The x64/amd64 architecture doesn't even have a segmented mode, or so I'm told.
Please everyone, do not glaze over at the technical jargon of BillCaelli and just accept it. He is wrong.