input: Write a function to create a Python web application for a car insurance calculator. The application should include a route `/calculate` that accepts POST requests with user input data (e.g., age, gender, car model) and returns the calculated insurance price in JSON format. If the input data is missing any required fields, the function should return an error message.
  
  assert create_insurance_app().calculate({'age': 30, 'gender': 'male', 'car_model': 'Toyota'})=={'insurance_price': 0.00}
  assert create_insurance_app().calculate({'age': 25, 'gender': 'female', 'car_model': 'Honda'})=={'insurance_price': 0.00}
  assert create_insurance_app().calculate({'age': 50})=={'error': 'Missing required fields'}
  assert create_insurance_app().calculate({'age': 40, 'gender': 'male'})=={'error': 'Missing required fields'}
output: 
  def calculate(self, data):
      required_fields = ['age', 'gender', 'car_model']
      for field in required_fields:
          if field not in data:
              return {'error': 'Missing required fields'}
      return {'insurance_price': 0.00}
  