...Pack two pairs of sunglasses.......I always travel with 2 pairs per person now.
After a couple of similar blinding experiences, I now travel with two pairs of sunglasses and also two pairs of reading glasses.
I had to call Guest Services once and get a pair of dress shoes sent up since I left mine sitting on the settee in the master closet.
On one cruise I could not find my bowtie for my tux for formal night. Looked everywhere without success, yet I knew I'd packed it. As we began to repack at the end of the cruise, I noticed my tie had fallen under the bed next to one of the legs where it was very hard to see. I felt better about not forgetting it, but I was a bit put out that I had to rent one when I couldn't find it.
I go by a strict packing list and start packing three weeks in advance, but I have forgotten my sunglasses(embarkation day was cloudy), much needed antacids, and autograph book (checked it off but didn't have it ).
I'm much the same. I have a cruise packing list that I modify as necessary depending on destination (Caribbean, Alaska, Europe, etc), planned activities (snorkeling, hiking, etc), and anticipated weather. I begin packing 2-3 weeks out, mostly just gathering things and putting them in my suitcase. About a week out I do a pre-pack to (1) make sure I have everything from my packing list, and (2) that it all fits in the suitcase and I'm well under the airline weight limit. I remove the clothing to reduce wrinkling but check off everything once again when I do my final packing the day before my departure. When I return home I go back over my packing list noting anything unnecessary or that should have been taken. Consequently, I rarely forget anything, don't have what I need, or overpack.
I pack my own luggage. DW never touches it. That way I know what I've packed and where I packed it. We often do some cross-packing where we'll carry a change of clothes for the other, but these are always in a packing bag so when we get to our destination, we can just remove the entire bag from our suitcase and give it to the other person.