"on host 192.168.0.254
arp -s 192.168.1.2 <MAC-ADDRESS>
although host 192.168.1.2 is up and i am able to judge that using ping and ssh"
The last part gets me confused. If you are on the original host and you can ping then either two situations are happening. One is that you have a dynamic arp entry or some router that is connecting the two subnets.
Try simple arp for display of both static and dynamic entries.
See this web page for some more ideas or tell me a bit more of this issue.
What I'd need to know is the site topology for this test and how you are able to ping it.
About the only time I use a static arp entry is to program a device. For example I need to program a 192XXX device on a 10.xxx. I don't reconfigure the host 10xxx, I make a static entry on that mac for the 10xxx. Then I can make it a 10xxx from default.