Tracking by IP is a ridiculous idea. My mobile phone provider uses transparent proxying for its mobile Internet - I must share the same external IP as thousands of other people when I browse the web via my phone. Not to mention that households using NAT will have three plus accounts from the one IP, let alone businesses with hundreds.
Internet-facing IP simply isn't unique enough for these purposes.
My inclination is to agree with you; the IP is hardly a unique identifier. But they don't need perfection. Think about it: most people, most of the time, will send requests to FB from just a few IPs and maybe one ISP proxy network (which FB can recognize as a proxy.) They know that your account is associated with these IPs based on tracking cookies. So, when they see a request from one of these IPs without the cookie, they can do a reverse lookup to get a list of possible accounts. That narrows the field. Next they can do a semantic analysis of the page that had the Like button which sent the request, and compare that to pages previously associated with the possible accounts. If one of them stands out as a likely match, they can be pretty sure who sent the request.
The more data they gather, and the more relationships they can record between you, your friends, and the pages you visit, the better they will get at tracking you without the cookies.
It's an interesting idea in theory, but I honestly think that the number of people who care enough about privacy to want to log out (or otherwise stop the cookies from being sent to Facebook) would be so low that it wouldn't be cost-effective. My guess is that it would probably be confined to HN's demographic.
Internet-facing IP simply isn't unique enough for these purposes.