The Problem: Lack of Representation. If you've never been the governing party, you never get to appoint any Senators. Hence there are no NDP Senators and there will never be a BQ or Wild Rose Senator. What if every Party has a chance of appointing the next Senator, proportionate with their seat distribution? (If we had Proportional Representation, the chance would equal level of support for the Parties).
Idea: At the beginning of every parliamentary session, every Political Party in Parliament submits lists of proposed Senators for each province. Parties cannot add names to the list during the session. Any candidate who fails to meet the appointment criteria during the session (moves out of province, loses property, dies, etc.) gets dropped off the list. When a Senate seat becomes available, we take 50 or 100 candidates from the lists for the appointment area, and have a lottery draw.
We can distribute the candidates according to each Party's seat distribution in Parliament overall, or in the province only (a regional party like the BQ might prefer lottery base numbers be based on Province-by-Province seat distribution, but using country-wide seat distribution might be simpler).
If the distribution of seats is 53% PC-31 NDP-12 LIB with a smattering of Independents and other parties, as in the last parliament, then 53 candidates come from the PC list, 31 from NDP's and 12 from the Liberals'. Elections Canada selects which candidates go into the hopper with another draw (in my example, throw every name put forward by the PCs and pull out the first 53 names at random, then the same for the other Parties that qualify for the draw). In my example the numbers don't add up to 100 because there were 8 Independents, 4 vacant seats, and the Greens, the BQ, and the Forces et Democratie had 2 seats each. In a parliament of 308 seats, you need 3 seats to qualify for the draw. You could allow the Independents and smaller parties to caucus together to make an Independent's list and pull 4 names from that list in my example to make up a base of 100 candidates for the final draw.
The Prime Minister and the leaders of the other Political Parties can agree informally that the PM will recommend for appointment whoever wins the draw.
Since the PM still technically makes the appointment recommendation, I'm not sure a full-on constitution amendment would be required. It would certainly be easier to get agreement from 4 or 5 party leaders than the amendment formula under the Constitution.
This still won't fix corruption problems in the Senate, but the fact that the next appointment can go to anybody from any Party (even an Independent) would certainly give the House of Commons some "sober second thoughts".
Alternative Lottery Scheme: Do a draw of all the MPs with a seat in the Province with the vacancy, whoever wins nominates the Senator and the PM recommends to GG for appointment. (Added after initial posting)
Wildcard Idea: If the Senate is truly the "Taskless Thanks" that embattled Senator Mike Duffy once dubbed it, maybe we should open it up to everybody on the voters lists in each province. Hell, we could even televise the draws, right after the lotto telecast! Just Imagine, You could be on Cloud 6/49!