Look at it this way, if they try to screw you on the price you can always walk away and go to the next dealership and order a customer 3-Series exactly the way you want since they don't have any of your money (besides the deposit which they would have to give back). Don't be afraid to stick to your guns when the car shows up and don't let the emotion of the new car just inches away let them put one over on you. You can find the invoice and retail cost here in this forum. I would just print that out and take it in with you when the car arrives.
By the way, this $1000 down and do-the-paperwork later is pretty standard practice with BMW even if you order a custom 3-Series. The only time you pay for the car in advance is if you're doing European Delivery and then it's only 2 weeks before pickup, which is normally after the car is finished with production and sitting in the ED parking lot.