I work from Japan and my colleagues are in the UK. I agree that it's very difficult. Having a few hours of overlap almost every day is crucial. Usually I work until 8 or 9 pm (sometimes later). Probably for someone who has a shifted time schedule (gets up at noon) it would be absolutely ideal, but I'm a morning person :-) Still, I've adjusted to it.
There are a couple of things you need. First, meetings have to be at times where everyone is available. That can be an inconvenience for some people, but it is what it is. Sometimes it means that some people in the UK have to get up early, sometimes it means that I have to stay up late. But if you are sensible, nobody has to take the full burden.
To combat time-zone-Conway's-law I often do a hand-over work with my colleagues. I work on something in my afternoon. We pair for a couple of hours and then they work on it for the rest of the day. They leave me notes and I carry on. It takes practice and trust to do it, but when it works it is actually incredible. I would say it's my favourite way of working. However, when it doesn't work it's terrible :-). The biggest thing is developing trust, relaxing and just going with the flow. Your colleague is going to go in directions you didn't expect. You need to be magnanimous and keep going in that direction, even if it sometimes makes you uncomfortable. On the plus side, I've found that it's stretched me as a programmer and I've learned a lot.
I would take timezone co-lacated (or rather coworker, preferred working times co-located) if I could, but you can make it work otherwise.