If it an't broke
If the heater does not leak, you probably don't need to replace it.A hot water heater is a very simple device. The engine heat exchanger is a simple tube with in a tube. The electrical is an element with 2 bi-metal switches. The engine heat exchanger on this water heater is a double wall heat exchanger and was not very efficient. It takes a long time to heat up the water. How long did you run the engine? If you are not heating by the engine, here is a list of possible problems and solutions;1. No circulation - Blocked hoses, old heater hose breaks down over time and can cause restrictions that will stop the circulation of water. 2. The heat exchanger in the hot water heater can build up slag and restrict flow. Flush the engine or remove the hoses and clean the heat exchanger with a 10% solution of muriatic acid. 3. There is an air lock in the hot water heater heat exchanger. The hot water heater being installed above the fill for the engine usually causes this. Solution is to lower the hot water heater or install a fill tank inline and above the hot water heater.If the hot water heater does not heat on electric check the following;Element, check to see if the element is burned out. This can be done with an ohmmeter. Replace if burned out. If the element is good, check the two bi-metal switches.The parts for these heaters should be available from your local marine store or hardware store. Take the parts with you to find a suitable replacement. Do not go up in watts in the element, it is ok to go down. It will just take longer to heat up the water. The switches are 2-different temperatures. One is set at 120 degrees for normal operation and the other is set at 200 degrees for high limit.Good luck.