Marriott needs to stop marking "flexible" rates, because they imply something they aren't.
It's tough, but be sure to read the cancellation terms for each hotel you are interested in before booking. Also, be sure to save the original email with original terms. Hotels are also known for changing the terms of cancelation, and that change appears when viewing the reservation online.
This is why it's important to keep the original booking email.