All of this will depend on how the contract is worded. But to answer your questions:
1. Yes, technically there is nothing stopping the seller from backing out of the assignment. However, your contract should include a clause which states the terms of the cancellation and/or requires a non-refundable earnest money deposit from the end buyer up front.
2. Again, all of this depends on the contract. However, yes, since you have entered a purchase and sale agreement with the seller, you are bound to the terms of that contract. If the contract states that you will close on x date, then you are liable to legal repercussions if you do not perform. Just because the contract is assignable does not mean that you are off the hook if you are unable to assign it.
The best way to protect yourself is to give yourself as long of an inspection period as possible. Also, make it easy for you to cancel if needed, and make it as difficult as possible for your end buyer to cancel. Also, at the end of the day, the best practice is to know and trust everyone you are doing business with. Have an end buyer already established before you get any contracts signed. Do not just enter into an agreement with the seller and hope that you can assign it.