Another few possibilities for this which were not mentioned in the article:
* Check that all your APs are broadcasting the same name. No devices I know of will naturally roam to an AP with a different name.
* Check that all your APs are broadcasting identical security features (e.g. WPA1, WPA2, WPA1 or WPA2 .. as well as the encryption methods like TKIP, AES/CCMP, etc). Many devices will check these too, and roam only to matching APs.