Cannot change mac address

ubuntu / xubuntu 13.10 and 14.04 (this issue should exist in debian as well)

I use wifi to connect to internet. I would like to change the wifi card mac address before connecting. Let's call the original mac address, macA, and the new mac address, macB.
I do the following:

ifconfig wlan0 down && ifconfig wlan0 hw ether <macB> && ifconfig wlan0 up 

then I check the new mac out:

watch -n 1 'ifconfig wlan0 | grep HW'

It works: macB appears

as long as I stay without trying to connect to internet, macB stays in place.
as soon as I try to connect to internet, the system gets back to macA instantaneously

So I disabled networking in Network Manager, and erased all existing connections. I performed the above operation, and enabled networking again in Network Manager, the issue remains

I have also tried:

ifconfig wlan0 down && ip link set wlan0 address <macB> && ifocnfig wlan0 up

I have also tried to put

'sudo service networking stop'

(which should be the same as disabling networking from Netwok Manager)., do all this, and start networking service again but the issue remains.

I absolutely need to understand what's happening in the system;

Even if you do not have the answer, please give me some leads I can dig in.

Thanx in advance folks!

---------- Post updated at 08:23 AM ---------- Previous update was at 08:20 AM ----------

just one more thing:

I used macchanger (which exists in ubuntu/xubuntu universe repositories) and have the exact same issue.

I asked the author a feedback regarding this issue but no answer so far.

Maybe you should take a look at your arp cache before and after.... and also your arp cache TTLs

thank you.

I start my laptop, so the cache should be empty , anyway, I issue:

arp -n

there is no entry for wlan0. Anyway, I flush everything:
sudo ip -s -s neigh flush all
-> msg: Nothing to flush

After that, the issue remains.

---------- Post updated at 09:31 AM ---------- Previous update was at 08:51 AM ----------

I could finally make it working !
It looks like my network manager did not stop correctly from gui:
so doing (as root)

service network-manager stop && ifconfig wlan0 down && macchanger -A && ifconfig wlan0 up && service network-manager start

it works!
I need to tcpdump just to be definitively sure the fake mac is given to the wifi spot.
thanx for reading guys.