A single-screen price quoting application used by a houseboat rental reservation system Solution

Design and implement a single-screen price quoting application used by a houseboat rental reservation system. The rental company operates docks in five towns listed here in the order of river flow: Ankor, Bilk, Calrow, Derrit, Elrose. The quotes are for one-way rentals. This application should feature the most suitable controls for selecting:
•Number of persons aboard (up to 6);
•Engine power, expressed as Level(from 1 to 4)
•Departure town, date and time*•Arrival town, date and time
Note** in this app, time should be expressed in hours, without minutesPrice components are listed below. If expressed in %%, use the previous step results as a new base. When calculating, round to the nearest cent at each step.
1.Base $239.99
2.9% of extra per each step up in Power Level above 1.
3.If the duration is over 22 hours, $12 per each additional hour.
4.Starting with the fourth person aboard,10.5% per person
5.If arriving to a dock upstream, $35 per segment(defined as covering the distance to the nearest dock in the selected direction).
6.If arriving to a dock downstream, $30 discount per hop.
7.Tax 6.1%
Controls should display choices for selection directly, e.g. the ports should be presented by the town names, not by introducing numeric codes.Date/Time controls should initially be set to the next exact hour after the current (at run-time) computer system date/time.A button Calculate Quote should result in displaying the itemized list of pricing components and Grand Total (all formatted like $999.99).In case departure or arrival time is selected between 9 PM and 6 AM (inclusive) and/or Power Level 4 is requested, immediately (i.e. before a button Calculate Quote has been hit)display the warning in red: Captain License will be required at the boat pickup.Clear the warning if the user changes parameters in the way not requiring it anymore. No multiple warnings should be ever displayed. You would have easier time to avoid them if you process them in a single moduleMust be in windows form C#