Looking at this thread, it seems apparent to me that among those who have "prepaid" their meals, there are:
People who pay vastly varying degrees of price to ride Amtrak sleepers, and as a result we get
People who have vastly varying degrees of expectations of the dining experience.
Starting off with just the coach perspective, for those paying for their meals in the Dining car, the result is reasonable. Yes, you might be able to get the same steak for $10.95 at Applebees, but at least you can get it on the train, so it's still a decent buy.
For sleepers however, it seems the expectations are largely linked to price.
I'm what you could call a "Sleeper Cheapskate" as I will only make the trip if I can get one of the lowest 2 buckets in roomette, and I'm doubling up with a riding partner to help defray the costs. The result is that I'm usually paying between $60-$80 a night out of pocket for the upgrade.
I'm no stranger to either fast food or the "casual dining" experience as its called among the chain sit-down restaurants. I will do an occasional meal with company at a nicer seafood restaurant like M&S, but these are occasional.
Thus, I'm pretty satisfied with Amtrak's dining service. While the variety is limited, I've found nearly all my meals to be at least satisfactory, and some to be downright excellent. About my biggest gripe is that the breakfast potatoes tend to get cold quickly.
However, I can see that someone who paid top bucket for a single occupancy in a full bedroom is liable to have higher expectations from their meal experience, considering they likely paid $450 a night for their upgrade. Yes, a part of that is from having more space, but even a single person getting a late roomette can pay over $300 for a single night. I'm sure that to them, the meals fall short of their expectations.
So what would be the solution?
A revamp of the pricing structure to even out the buckets some more? This might price out people like me, and leave the sleepers hardly occupied, jeopardizing the service.
Some sort of a "super-sleeper" upgrade that allows the less price-sensitive among us to choose from some expanded, finer dining menu? Would Amtrak realistically be able to stock a train without having spoilage or frusrtrating people with sell-outs of the item they want?
It seems that for every one complaint I hear about the quality of Amtrak's dining service, I hear one remark that finds it perfectly acceptable, and one that praises it for being so much nicer than anything offered on airlines.
I guess as with anything, it's all about one's perspective.
I think your observations are on target. Personally, I have found the dining car experience to be OK. I have traveled on Amtrak enough over the past couple of years to understand that some items on the menu are often more consistent than others.