You can't place nodes in a Canvas as it is not Parent, therefore it is a leaf Node and can have no children.
You could place the Canvas in a Group then add other Nodes to the group to overlay the Canvas. Or you could take snapshot images of nodes and place the snapshots in the canvas. Though you may be better off rendering your UI in a standard scene graph rather than a canvas.
Here are some simple samples of similar, though different, UIs constructed using a standard scene graph: Drag and drop connected nodes and Dynamically add draggable and resizable children.
yWorks created a JavaFX prototype of their excellent diagramming tool, so consider contacting them and licensing that rather than building your own.
See also the Dex JavaFX Visualization Framework which aids in data visualization UI construction.