Is there a reliable and accurate profitability calculator? I've looked at the various profitably calculator sites and honestly I'm not sure how up to date they are. They don't seem very accurate. Is there one that's better than the others?
All the calculators I have seen have been correct.

There are three typical sources of the confusion you are experiencing:

1. The calculator is NOT telling you what you will earn in the next 24 hours.

No, mining calculators cannot tell you exactly what you will earn from day to day. And they're not trying to.

If you had a dice calculator it would tell you that your average roll will be 3.5. You can roll a die 1 time, get a 6 and call bullshit because 6 is far from 3.5. But the calculator wasn't trying to tell you what your next roll will be. It cannot know the future. Neither can mining calculators.

What they are telling you is the average expected income with your hashrate mining at the given difficulty. Over the long term variance evens out, but something short like a single day has a lot of variance.

A common mistake among beginners is to try a few different mining pools for one day each and declare the one that paid the best as the most profitable pool. This is like buying one scratch ticket from three different lotteries and declaring one of the lotteries the best because you won on that ticket. This sort of thing makes absolutely no sense once you learn about variance.

2. Payouts lag behind mining work.

Another source of confusion is that pay from most pools lags behind the work you do. For example, many pools use PPLNS with shifts and pay for your work as long as your work is among the 10 latest shifts at the time when a block is found. If your work is eligible for pay (in the 10 latest shifts) for e.g. 48 hours, then it will take 48 hours before the work can no longer get paid more coins.

If you look at the pay after 2 of those 48 hours you are sure to be unhappy with how much you've been paid. This is like working a single day and then complaining to your boss that you didn't get paid, when your salary is being paid on a monthly basis. Note that 48 hours is just an example, this will vary from pool to pool.

3. Calculators don't include all the factors

This is a much smaller issue than the two others, but can still be useful to be aware of. There are many factors that affect your mining income, and most are ignored by calculators. I wrote about this here: BTC/hashes/second rates for various pools