It's all random. Two of my starting villagers refuse to move out despite having newer ones already moved out looool. I usually do this method.
.
.
I get a villager to ping for moving, then I usually refuse as its someone I want to keep. Then I TT two weeks forward exactly by changing 3ds date. Then I always have a villager wanting to move out. It may take one more extra day to TT forward in order for me to find them, but I always do. It's safe to TT any amount of time after someone has pinged to move, for some reason you won't ever lose anyone.