A couple weeks ago, I dusted off the wallet on my VPS that picked up 50 BTC from mining about a year and a half ago. (It's no longer on my VPS, BTW.) I figured I'd do some small transactions to see if it'd work...started with .0001 BTC to a Blockchain wallet on the 9th, followed by a .01 BTC transaction to the same wallet on the 15th or so. It took until the 22nd for both to be included in a block.
Almost no transactions will take more than a day or two.
If you are sending a "spam-like" transaction and then exiting (closing your client), chances are the nodes you were connected to didn't choose to relay your transaction. This normally isn't a problem as the client will re-broadcast your transaction to the network (say , ... something it might do once every half hour), and eventually a node will relay it and it will go from there.
When these transactions finally did get included it was probably then because you had left your client running long enough for it to get rebroadcasted until it does get included in a block.
The other possibility is that it had actually been included in a block just that your client wasn't caught up to synchronizing blocks and thus wasn't showing the confirmations that existed on the network.
There is a way that a transaction with newer coins could get lower priority and take longer, but after coins are a few days old, the age of the coins is no longer a factor.