Don't forget to make rc.local executable - or the compatibility layer will not run it! In the above examples which are listed - you would run chmod a+x in order to make the rc.local file executable. As follows:
$ chmod a+X /etc/systemd/system/rc-local.service
I would think another possible problem is the location of your rc.local script! If you haven't already added the compatibility to systemd (which should be built in - and seems to be by former mention of it already existing) you may need to double check your files location... On my OS I have rc-local at /etc/rc.d/rc.local so I ran the following:
$ sudo chmod a+x /etc/rc.d/rc.local
$ sudo systemctl restart rc-local.service
$ sudo systemctl status rc-local.service
rc-local.service - /etc/rc.d/rc.local Compatibility
Loaded: loaded (/lib/systemd/system/rc-local.service; static)
Active: active (exited) since Fri, 13 Apr 2012 14:42:39 -0600; 3s ago
Process: 2285 ExecStart=/etc/rc.d/rc.local start (code=exited, status=0/SUCCESS)
CGroup: name=systemd:/system/rc-local.service