Put butter and oil in a deep frying pan. Add onion and cook for 5 minutes. Add asparagus and broccoli and cook, stirring often, for 5 minutes or until just tender. Cool.
Preheat oven to 200* C. Lightly grease a baking dish with butter.
Spoon asparagus and broccoli mixture into food processor and pulse until roughly chopped. Transfer to a bowl and add breadcrumbs, 1/2 cup of Parmesan and egg. Season. Fill cannelloni.
Put cream in a saucepan with milk. Heat without boiling. Add other cheeses and stir until they melt.
Pour 1/3 cup of cheese sauce to cover the base of baking dish. Top with cannelloni, spreading evenly. Pour over sauce and sprinkle with remaining Parmesan.
Bake for 25-30 minutes or until cheese is golden and pasta is tender.