Your second screenshot suggests that some of your apps have been moved, so I'm assuming that the function does work for some apps but not all.
Most recent Android phones don't have this option at all. Where it exists, it will only be available for some user-installed apps and no pre-installed ones. The app developer determines whether they want their app to be moveable or not. Since so many phones don't have this option I'd not be surprised if a smaller fraction of apps allow this now than used to be the case.
There used to be a trick for setting the default install location to SD, which would let you move more apps. It involved enabling USB debugging, installing
ADB on a computer, connecting the phone then on the computer typing the command "
adb shell pm set-install-location 2". If you want to undo it, repeat the procedure but replace the "2" with "0" (or "1" - one of them is "set to phone", the other is "auto", but I can't recall which is which). I've not tried this since Gingerbread, but it probably still works. That will let you move more apps, but not all. Remember that if you use an app's widget you should not move it to the external SD card, as that will break the widget (if not immediately then the next time you reboot). Also apps installed after doing this will be installed directly to SD, so if you don't want them there (e.g. because of widgets) you need to move them to the phone.