Improved finite-difference beam-propagation method based on the generalized Douglas scheme and its application to semivectorial analysis