I think you should have told her that she could come by that afternoon (if it was ok) but that she would be dealing with your coworker. You left out an important piece of information for her. She still thought she'd be dealing with you and was confused.
You know, sometimes it seems as if people on e-hell just look for a reason to criticize the original poster.
From the original post: "She very abruptly said that "well, can't someone else just give me the information? I don't want to wait until Friday." I took a second to think it over and then said, "okay, come ahead this afternoon." She said okay and then hung up."
When I read the original post, my immediate understanding was that the OP was getting someone else to give Caroline the info, just as Caroline asked (demanded) that she do.
On top of that, even if Caroline had expected the OP, that would have nothing to do with her complaint of the OP being "lippy" in the phone call. It sounds to me as if Caroline would never be pleased with anything but getting her own way, at all times, not matter the inconvenience to anyone else.
OP, I think you were both polite and professional to someone who showed no consideration of you, your other clients an prospects, or frankly, anyone but herself. IMO, you di just fine, assuming your tone of voice was as professiiiiiiiiional as your words.