I feel that I have to reiterate the fact that you will indeed need to invest in a little development to get done. However, as the previous posted pointed out, if you go with DotNetNuke, you already are starting with the majority of your code done. In order to get everything else you need to work, you will need to build or buy new providers and/or modules.
However, make sure that if you do move forward with DNN, do not change the core code if at all possible. Doing so may make it completely impossible to upgrade later to take advantage of new features or security updates in future releases. If you opt to change the core code, you are essentially putting yourself in charge of security monitoring, bug changes, and feature updates down the road.