To reliably model adsorption/diffusion, the mobility of the cations needs to be taken into account. For example, in FAU there are many different cation-sites with certain "occupancy" ratios. Your cation model needs to be able to reproduce that.
That is why it is hard to reach an equilibrated system and it is a good idea to, when you have generated that, to store these positions in a restart-file.
Since cations are charged, the usual CBMC biasing can lead to numerical issues, but for single-atom cations you can achieve the same with a random-translation that tries to place the cation randomly in the box.
Look in the literature for papers on modeling of zeolites with cations for more pointers.