You need to treat IL as an EC private key. If it is == 0 or >= n then it is an invalid private key.
For both CKD functions, it is okay for IL to be 0. You only need to check that IL < n. (and that k_i != 0)
IL being 0 means the child's EC key pair is equal to the parent's EC key pair, which is a bit odd, but not explicitly forbidden by the current BIP 0032. (NOTE: The extended key may still differ in these cases)