For Vito to have 100% loyalty to Lincoln who you play as, other than completing the side missions related to him, enough districts must also be assigned to him as completing side missions might only work for Burke and Cassandra but not for Vito unfortunately.