Online timesheets and invoicing - why is it so hard to get right?

I like and use Freckle. For a single consultant with multiple clients, it works great. You enter your time. It invoices all unbilled items and you're done. It doesn't handle expenses well, so I know I'm going to have to work around that soon. As far as notes about the tasks, it is also lacking, having tags, but not a way to submit any real description with the hours. That's fine until you need more details for some clients.

But I tried to expand my plan to multiple users and it doesn't handle it well. I want a few consultants to be able to submit their time on the clients they work on and then I can roll them up with my time on the project and submit a single itemized invoice. For instance, they can see all the invoices to my other clients. Not a great model if you want some reasonable control.

I looked at Replicon, and it has TONS of reports, but as far as I can tell, it doesn't do invoicing at all. It does the best job at organizing the project, but the timesheet is kind of awkward. And without real invoicing, it's kind of a waste of time to just have better timesheets if it doesn't translate all its great reporting into supporting information on a nice invoice.

I looked at FreshBooks, and it seems to work fairly well, but the subcontractors' work that comes in all ends up translated to one particular task - they don't really get to use the tasks you set up for a project, and you don't get any categories they might have set up. Arguably, you want them to account for time according to your project template, but ultimately they get lumped into one particular task.

I'm looking at Blinksale now and it looks like it has a fully stylable invoice and looks great, but it's missing the whole timesheets feature. It seems to handle everything else right - estimates turn into invoices. But the invoices are going to be lacking in day by day breakdown of tasks. I can't have people entering things on invoices or estimates gradually over time. That's what timesheets are for.

You have a good system for timesheets and invoicing that you like that you think might really work for a consultancy?