I usually do it the night before because I'm a procrastinator! And I'm always rushing in the end! I think most people bake up to 2-3 days before and frost maybe 1-2 days ? Once you frost it, it should stay fresher and seal in the freshness.
I did a wedding cake 2 weeks ago for a Friday night. I baked them all on Wednesday and frosted and decorated them late Thursday night and delivered it on Friday morning. The bride told me it was delicious.
I always try to bake as close to the due date a possible, however, if you need to bake ahead of time, bake 3-4 days in advance, wrap and freeze for a short time. I don't see the harm in decorating the day before or two days before if the decorating detail is time consuming.
When the going gets tough-----whip it a while, it will fluff up!
It depends on whether you are making a box or scratch cake. Box cakes have chemicals that help preserve their freshness. A box cake can be tasty for up to a week after baking. I would not leave a scratch cake for more than 3-4 days. Frosting a cake or wrapping it in fondant will seal in some of the freshness. I try to bake (or un-freeze) 1-2 days before delivery so people get as fresh a product as possible-- you never know if your customer will have leftovers and how long they will keep them around!
My normal schedule is bake/ice/decorate on Thurs for a Sat wedding. howver, I have baked/iced/decorated as early as Tuesday .... and rec'd comments from wedding guests on how it "....was the best tasting cake" they'd ever had!